文件系统fs模块其他方法
验证文件是否存在
fs.exists(路径,回调函数)//已废弃
fs.existsSync(路径); //返回布尔值
获取文件信息
fs.stat(路径,回调函数(err对象,文件属性对象));
文件属性对象.isFile() 是否是一个文件
文件属性对象.isDirectory() 是否是一个文件夹
文件属性对象.size 返回文件字节大小
fs.statSync(路径); 返回一个文件属性对象
fs.lstat 当查看符号链接文件时,必须使用fs.lstat来查看
fs.lstatSync(路径)
删除文件
fs.unlink(路径,回调函数);
fs.unlinkSync(路径);
列出文件夹的文件,只会列出文件名和后缀,无额外路径
fs.readdir(路径,回调函数(err对象,files包含所有文件名的数组))
fs.readdirSync(路径,回调函数) //返回包含所有文件名的数组
截断文件(只保留指定子节文件)
fs.truncate(路径,大小字节数值,回调函数)
fs.truncateSync(路径,大小字节数值)
创建文件夹
fs.mkdir(路径,回调函数);
fs.mkdirSync(路径)
删除文件夹
fs.rmdir(路径,回调函数);
fs.rmdirSync(路径,回调函数);
重命名文件夹(文件名相同,路径不同,可实现移动文件功能)
fs.rename(原路径,新路径,回调函数(err对象));
fs.renameSync(原路径,新路径);
监听文件(文件发生变化时触发回调函数,会一直开启,回调函数中的参数都是stat对象)
fs.watchFile(文件名,{配置信息json,interval:毫秒数值,触发回调时长,默认为5s}/可选,回调函数(curr当前文件状态,prev修改前文件状态))
代码示例:
var fs=require('fs');
var f=fs.existsSync('C:/Users/10853/Desktop/td.txt');
console.log(f);
fs.stat('C:/Users/10853/Desktop/td.txt',function(err,stat){
console.log(stat);
})
var ff=fs.statSync('C:/Users/10853/Desktop/td.txt');
console.log(ff);
fs.readdir('C:/Users/10853/Desktop',function(err,files){
console.log(files);
})
var fff=fs.readdirSync('C:/Users/10853/Desktop');
console.log(fff);
fs.watchFile('C:/Users/10853/Desktop/td.txt',function(curr,prev){
console.log('文件发生了变化');
console.log(curr.size);
console.log(prev.size);
})