在nodejs中 可以通过fs(file system)模块进行文件的I/O操作
var fs = require(fs");//fs 为文件模块
var path = require(‘path‘);//path为系统路径模块
1.可以使用writeFile方法,将数据写入到文件到某个文件夹下
fs.writeFile(filename,data,[option],callback)
filename 为具体的文件保存路径地址
data为具体写入的文件数据对象
[option]为具体的保存文件配置,编码格式等
callback 回调函数
fs.writeFile(path.join(__dirname, ‘account.js‘), JSON.stringify(tempAccount), function (err) { if (err) throw err; console.log("Export Account Success!"); }); //以JSON格式将数据写入到文件路径下。
2.读出数据readFile
fs.readFile(filename,[options],callback)
filename 文件夹路径及名称
[option] 为具体的配置项及编码格式
callback 回调
fs.readFile(path.join(__dirname, ‘account.js‘), function (err,bytesRead) { if (err) throw err; console.log(bytesRead); }); //读出数据二进制的流文件
//如果需要读取具体的数据,需要进行编码的配置如下:
fs.readFile(path.join(_dirname,‘a.js‘),{encoding:‘utf-8‘},function(err){})
3.读取文件夹下fs.readdir(path,callback);
fs.readdir(path,callback);
path 为具体的读取文件夹路径地址
callback 回调
fs.readdirSync(path) 为读取文件的实时同步版本方法
path 为具体的文件夹路径
4.其他常用文件操作
判断文件是否存在
fs.exists(文件路径,callback(err,fd));
重命名
fs.rename(旧文件名,新文件名,回调函数);
文件所有者变更
fs.chown(文件名,uid,gid,callback);
fs.fchown(文件句柄fd,uid,gid,回调);
fs.lchown(链接路径,uid,gid,回调);
文件权限变更
fs.chmod(文件名,mode,回调)
fsfchmod(文件句柄,mode,回调)
fslchmod(链接路径,mode,回调)
文件信息
fs.stat(文件路径,回调函数);
fs.fstat(文件句柄,回调函数);
fs.lstat(链接路径,回调函数);
文件时间
fs.utimes(文件路径,访问时间,新建时间,回调);
fs.futimes(文件句柄,访问时间,新建时间,回调);
监视文件
fs.watchFile(文件名,[option],listener_callback(当前文件的stats,改变前的stats));
fs.unwatchFile(文件名);
目录操作
fs.mkdir(路径,权限,回调);
fs.rmdir(路径,回调);
fs.readdir(路径,回调);
创建链接
fs.link(srcpath,dstpath,[callback])
fs.symlink();
读取链接指向的路径
fs.readlink(path,[callback])
fs.unlink(path,[callback])