NodeJS中fs模块的基本应用
// 模块的下载 npm i fs
// 引入文件处理模块
const fs = require('fs')
// 使用fs模块,fs模块分为同步(Sync)和异步
// 1.查看文件信息(创建时间,大小等)
fs.stat('path', callback)
// path: 文件路径
// callback :function(err, stats){
// // 抛出错误,并结束回调
// if (err) throw {err}
// // 输出文件信息(创建时间,大小等)
// console.log(stats)
// }
//同步方法都是赋值形式获得回调信息
var stats= fs.statSync('文件路径')
// 文件夹操作
// 1.创建文件夹
fs.mkdir('文件夹名',callback)
callback:function(err){
if (err) throw {console.log(err)}
}
// 2.删除文件夹
fs.rmdir('path',callback)
callback:function(err){
if(err) throw{err}
}
// 3.查看文件夹
fs.readdir('path',callback)
callback:function(err,result){
if(err) throw {err}
console.log(result)
}
// 文件操作
// 1.创建文件/修改文件
// 清空写入(每一次写入内容都会覆盖前面所有内容)
fs.writeFile('path/文件名',data,callback)
callback:function(err){
if(err)throw{err}
console.log('写入成功')
}
// 追加写入(每一次写入的内容都会追加到前一次写的内容之后)
fs.sppendFile('path',callback)
callback:function(err){
if(err) throw{err}
console.log('写入成功')
}
// 2.删除文件
fs.unlink('path',callback)
callback:function(err){
if(err) throw{err}
console.log('删除成功')
}
// 3.读取文件
fs.readFile('path',callback)
callback:function(err,result){
if(err) throw{err}
console.log(result)
}
// 判断文件/目录是否存在(只存在同步,返回值是false/true)
var isExits = fs.exitsSync('path')
// 对于大文件的可读流/可写流
// 可读流
// 1.为文件创建可读流对象
var readStream = new createReadStream('path/文件名')
var writeStream = new createWriteStream('path/文件名')
// 2.设置可读的编码格式utf8
readStream.setEncoding('utf8')
// 3.监听可读流对象的数据流入
readStream.on('data',function(chunk){
// chunk:流
console.log(chunk)
})
// 4.结束监听可读流
readStream.on('end',function(
console.log('读取结束')
))
// 可写流(一般在可读流中配合可写流将数据写入到其他文件中)
var readStream = new createReadStream('path/文件名')
var writeStream = new createWriteStream('path/新文件名')
// 将可读流中的数据通过管道写入到可写流中
readStream.pipe(writeStream)
上述内容如有错误请指出