fs 常用操作:
fs 模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。其中异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。
Node 导入fs
const fs = require('fs')
- 读取文件
const text = fs.readFileSync('文件路径', '编码格式:utf-8') // 返回字符串格式文件内容
fs.readFile('文件路径', '编码格式:utf-8', (err, data) => {
// data: 字符串格式文件内容
})
- 覆盖文件内容(如果有文件就修改内容,如果没有文件就创建文件)
fs.writeFileSync('文件路径', '文件内容')
fs.writeFile('文件路径', '文件内容', (err) => {
// 修改成功
})
- 追加文件内容(如果有文件就修改内容,如果没有文件就创建文件)
fs.appendFileSync('文件路径', '要添加的文件内容')
fs.appendFile('文件路径', '要添加的文件内容', (err) => {
// 修改成功
})
- 删除文件(文件必须存在,如果删除的文件不存在会报错)
fs.unlinkSync('文件路径')
fs.unlink('文件路径', (err) => {
// 修改成功
})
- 判断文件是否存在,返回布尔值
fs.existsSync('文件路径')
- 拷贝文件
fs.copyFileSync('文件路径', '拷贝后的文件路径')
fs.copyFile('文件路径', '拷贝后的文件路径', (err) => {
// 拷贝成功
})
- 修改文件名(可以移动文件,移动的目录必须存在)
fs.renameSync('文件路径', '修改后的文件路径')
fs.rename('文件路径', '修改后的文件路径', (err) => {
// 拷贝成功
})
- 获取文件信息
fs.stat('文件路径', (err, data) => {
console.log(data) // 文件信息
})
const info = fs.statSync('文件路径')
info.isFile() // 是否是文件
info.isDirectory() // 是否是文件夹
- 创建文件夹
fs.mkdir('文件夹路径', (err) => {})
fs.mkdirSync('文件夹路径')
- 删除文件夹(只能删除空文件夹)
fs.rmdir('文件夹路径', (err) => {})
fs.rmdirSync('文件夹路径')
- 读取文件夹目录
fs.readdir('文件夹路径', (err, data) => {
// data: 子目录数组
})
fs.readdirSync('文件夹路径') // 返回子目录数组