如何使用fs?
其基本操作就是引入模块操作然后使用他所暴露的方法
var fs = require('fs');//因为是通用模块所谓不需要加位置
fs模块同时提供了异步操作和同步操作,一般只使用异步操作,因为同步操作会阻断系统的执行。
几个基本的fs的API(不写同步方法了)
1.读文件fs.readFile();
var fs=require('fs');
fs.readFile('bb.js','utf-8',function(err,data){
if(err){
console.log(err);
}else{
console.log(data);
}
});
结果是:var a=’dddddddddd’;确实读出了内容
如果把中间的配置项utf-8给去掉则会返回一串buffer对象,所以要是读的是文字型的文件的的话不需要buffer处理的话还是用utf-8;
写文件fs.writeFile();
var fs=require('fs');
fs.writeFile('aaa.js','var c=b;',function(err){
if(err){
console.log(err);
}else{
console.log('写入文件成功!')
}
});
如果权限没啥问题应该是成功的。
读取文件的信息fs.stat();
var fs = require('fs');
fs.stat('sample.txt', function (err, stat) {
if (err) {
console.log(err);
} else {
// 是否是文件:
console.log('isFile: ' + stat.isFile());
// 是否是目录:
console.log('isDirectory: ' + stat.isDirectory());
if (stat.isFile()) {
console.log(stat);
}
}
});
最后回调出的值进行打印结果为
{ dev: 888539220,
mode: 33206,
nlink: 1,
uid: 0,
gid: 0,
rdev: 0,
blksize: undefined,
ino: 17169973579398472,
size: 8,
blocks: undefined,
atime: 2017-03-31T00:13:50.182Z,
mtime: 2017-03-31T00:13:50.186Z,
ctime: 2017-03-31T00:13:50.186Z,
birthtime: 2017-03-31T00:13:50.182Z }
其中比较常用的应该是size,大小(字节)
birthtime 创建时间(Date)
mtime 修改时间(Date)