引入方式都是一样的通过require引入
throw抛出一个错误,阻止程序运行并把错误打到控制台
promise等fs基础的操作了解完看这个
let fs=require("fs");
let http=require("http");
//删除文件
try{
fs.unlinkSync("1.txt")
console.log("同步删除文件成功")
}catch(err){
console.log("同步删除错误:"+err)
}
fs.unlink("2.txt",(err)=>{
if(err){
console.log("异步删除错误:"+err)
} else{
console.log("异步删除文件成功")
}
})
fs.rename("3.txt","4.txt",(err)=>{//重命名
if(err){
console.log("异步重命名错误:"+err)
} else{
console.log("异步重命名成功")
fs.stat('4.txt', (err, stats) => {
if (err) throw err;
console.log(`文件属性: ${JSON.stringify(stats)}`);
});
}
})
fs.readFile("文件",(err,data)=>{
if(!err){
console.log(`同步读取出的内容:${data.toString()}`)
}
else{
console.log(`同步读取文件出错:${err}`)
}
})
try{
let data = fs.readFileSync('6.txt');
console.log("同步读取: " + data.toString());
}catch(data){
console.log("同步读取失败: " + data.toString());
}
fs.stat('4.txt', function (err, stats) {
console.log(`异步读取文件信息:${stats}`); //true
// stats.isFile() 如果是文件返回 true,否则返回 false。
// stats.isDirectory() 如果是目录返回 true,否则返回 false。
// stats.isBlockDevice() 如果是块设备返回 true,否则返回 false。
// stats.isCharacterDevice() 如果是字符设备返回 true,否则返回 false。
// stats.isSymbolicLink() 如果是软链接返回 true,否则返回 false。
// stats.isFIFO() 如果是FIFO,返回true,否则返回 false。FIFO是UNIX中的一种特殊类型的命令管道。
// stats.isSocket() 如果是 Socket 返回 true,否则返回 false。
//r 以读取模式打开文件。如果文件不存在抛出异常。
// r+ 以读写模式打开文件。如果文件不存在抛出异常。
// rs 以同步的方式读取文件。
// rs+ 以同步的方式读取和写入文件。
// w 以写入模式打开文件,如果文件不存在则创建。
// wx 类似 'w',但是如果文件路径存在,则文件写入失败。
// w+ 以读写模式打开文件,如果文件不存在则创建。
// wx+ 类似 'w+', 但是如果文件路径存在,则文件读写失败。
// a 以追加模式打开文件,如果文件不存在则创建。
// ax 类似 'a', 但是如果文件路径存在,则文件追加失败。
// a+ 以读取追加模式打开文件,如果文件不存在则创建。
// ax+ 类似 'a+', 但是如果文件路径存在,则文件读取追加失败。
})
fs.writeFile("file.txt", "1231231",{flag:"a"}, (err)=>{
if(err){
return console.error(err);
}
else{
console.log("写入成功~!")
}
})
fs.open('4.txt', 'r+', function(err, fd) {//fd文件描述符代表了被打开的文件
if (err) {
return console.error(err);
}
console.log(`open:${fd}`);
fs.close(fd, ()=>{
console.log(`文件被关闭了文件操作符是:${fd}`)
}) //关闭文件
fs.open('4.txt', 'r+', function(err, fd) {//fd文件描述符代表了被打开的文件
if (err) {
return console.error(err);
}
console.log(`open:${fd}`);
});
});
比较难的read还没看。