node.js 的 fs 模块 & 罕用办法
fs 是什么???
fs 模块也是 node 的 外围模块 之一
所有与 文件相干的操作 都是通过 fs 外围模块来实现的
包含 增删改查读写
所有的办法都分为 同步和异步 两种实现
有sync后缀的为 同步
罕用办法
1.readFile 读文件 readFile(filename,[options],callback);
* 第一个参数: 读取文件的门路或文件描述符;* 第二个参数: options,默认值为 null,写法一:{ebcoding: 'utf8',flag: r}
encoding 示意:(编码,默认为 null)flag 示意:(标识位,默认为 r 读 r+ 读写(没有会报错)w 写 w+ 读写)写法二:间接传入 encoding
* 第三个参数: 回调函数 内置参数 err
const fs = require("fs");
fs.readFile("1.txt", "utf8", (err, data) => {console.log(err);
});
fs.readFile("1.txt", {encoding:'utf8', flag: 'r'}, (err, data) => {console.log(err);
});
2.writeFile 写文件 fs.writeFile(filename,content,callback)
* 第一个参数: 为写入文件的门路或文件描述符;* 第二个参数: 为写入的数据,类型为 String 或 Buffer;* 第三个参数: 回调函数 内置参数 err
const fs = require("fs");
//Hello world 为写入的内容
fs.writeFile("2.txt", "Hello world", err => {if (!err) {fs.readFile("2.txt", "utf8", (err, data) => {console.log(data); // Hello world
});
}
});
3.appendFile 追加文件 fs.appendFile(filename,content,callback)
* 第一个参数为写入文件的门路或文件描述符;* 第二个参数为写入的数据,类型为 String 或 Buffer;* 第三个参数: 回调函数 内置参数 err
const fs = require("fs");
fs.appendFile("3.txt", "world", err => {if (!err) {fs.readFile("3.txt", "utf8", (err, data) => {console.log(data); // world
});
}
});
4. 拷贝文件 copyFile(sourcePath,targetPath,callback)
* 第一个参数为被拷贝的源文件门路
* 第二个参数为拷贝到的指标文件门路,* 第三个参数是回调函数
const fs = require("fs");
fs.copyFile("3.txt", "4.txt", () => {fs.readFile("4.txt", "utf8", (err, data) => {console.log(data); // world
});
});
5. 创立目录
fs.mkdir(path,callback)
6. 读取目录
fs.readdir(path,callback)
7. 删除目录
fs.unlink(path,callback)