Node.js中内置文件系统一些常用的方法总结
2021-06-19 15:05
标签:没有 path append 替换 失败 分割 删除文件 二进制 options 1.异步读取一个文件的全部内容:fs.readFile(“./filename”,[options],function(err,data){statements}) // fs.readFile(‘./88.txt‘,‘utf-8‘,function(err,data){ // if(!err){ // console.log("读取成功"); // console.log(data); // }else{ // console.log("读取出错"); // // console.log(err); // } // }) 注释: Filename为文件路径 回调函数function传递了两个参数 (err, data), data 就是文件的内容。 [options]如果未指定编码方式,原生buffer就会被返回。 2.同步读取一个文件的全部内容: fs.readFileSync(“./filename”,[options]) // var data = fs.readFileSync(‘./88.txt‘,‘utf-8‘); // console.log("同步读取: " + data.toString()); //也可以不填options而用toString()方法 // console.log("程序执行完毕。"); 注释: fs.readFile的同步版本。 返回文件名为 filename 的文件内容。 如果未指定编码方式[options],原生buffer(二进制)就会被返回。 1.异步写入一个文件,如果文件原先存在,会被替换。(如果没有该文件则会新创建一个同名称文件) fs.writeFile(“filename”,”data”,[options],function(err,data){}) var fs = require("fs"); console.log("准备开始写入"); var w=‘我是通过writeFile写入的内容‘; fs.writeFile(‘./test.txt‘,w,{flag:‘a‘},function(err,data){ if(!err){ console.log("写入成功!"); console.log("-----分割线----"); fs.readFile(‘./test.txt‘,‘utf8‘,function(err,data){ console.log("读取内容为:"); console.log(data); }) }else{ console.log("写入错误:"); console.log(err); } }) 注释: 异步的将数据写入一个文件, 如果文件原先存在,会被替换。 data 可以是一个string,也可以是一个原生buffer。 [options]中 {flag:‘a‘} 不会覆盖住原先的内容而是接着后面写(追加的方式) 2.同步写入内容: fs.writeFileSync(‘filename’,’data’,[options]) 注释: writeFile的同步版本; 1.异步的将数据添加到一个文件的尾部,如果文件不存在,会创建一个新的文件。 data 可以是一个string,也可以是原生buffer。 fs.appendFile(‘Filename’,data,[options],function(err,data){}) 注释: 和writeFile()方法同理; 2.异步的将数据添加到一个文件的尾部 fs.appendFileSync(filename, data, [options]); fs.appendFile的同步版本。 1.检查指定路径的文件或者目录是否存在。接着通过 callback 传入的参数指明存在 (true) 或者不存在 (false)。 Fs.exists(‘path’,function(msg){console.log(msg)}); fs.exists(‘./test.txt‘,function(msg){ console.log(msg); }) //true 存在 //false 不存在 2.同步检查指定路径的文件或者目录是否存在。 Fs.existsSync(‘path’); var exist = fs.existsSync(‘./test.txt‘); console.log(exist); //true 存在 //false 不存在 1.异步删除一个文件完成时的回调函数(callback)只接受一个参数(msg): fs.unlink(‘path’,function(msg){console.log(msg)}) 删除成功 即为null!console.log(msg) //null 删除错误(文件不存在) { Error: ENOENT: no such file or directory, unlink ‘path‘ errno: -4058, code: ‘ENOENT‘, syscall: ‘unlink‘, path: ‘C:\\Users\\Administrator\\Desktop\\11\\test.txt‘ } 2.同步版的unlink Var unlink=fs.unlinkSync(path); Console.log(unlink); 1.异步创建一个空目录 fs.mkdir(‘path’,[mode],function(err){if(!err){console.log(‘创建成功’)}}); fs.mkdir(‘./abc/test‘,function(err){ if(!err){ console.log("创建成功"); }else{ console.log(err); } }) 2.同步创建一个空文件夹 fs.mkdirSync(‘path’,[mode]); 1.异步读取一个文件夹下的所有目录: fs.readdir(‘path’,function(err,files)) fs.readdir(‘./abc‘,function(err,files){ if(!err){ console.log("读取成功:"); files.forEach(function(file){ console.log(file); }) }else{ console.log(err); } }) 注释:files是一个数组 需要forEach(function(file))支持 2.同步版readdir Fs.readdirSync(‘path’); var read = fs.readdirSync(‘./abc‘); console.log(read); 注释:返回的是一个数组; 1.异步删除一个文件夹(目录),注意只能删除一个空的文件夹 fs.rmdir(‘path’,function(err){if(err){return console.log(err);}}) fs.rmdir(‘./abc/test‘,function(err){ if(!err){ console.log("执行删除..."); console.log("删除成功!"); fs.readdir(‘./abc‘,function(err,files){ if(!err){ files.forEach(function(file){ console.log(file); }) } }) }else{ console.log("删除失败:"); console.log(err); } }) 2.同步删除文件夹(空) fs.rmdirSync(‘path’) Node.js中内置文件系统一些常用的方法总结 标签:没有 path append 替换 失败 分割 删除文件 二进制 options 原文地址:http://www.cnblogs.com/AzukiAzusa/p/7192196.html文件系统(fs)
首先引入内置模块:var fs = require(“fs”);
readFile
writeFile
appendFile
Exists
unlink
mkdir
readdir
rmdir
上一篇:html-滚动到底部自动加载
下一篇:PHP定义类