文件和文件夹的操作(fs模块)
下面是fs的几种功能:
首先在js文件最上方引入模块
const fs = require("fs");
对文件夹操作:
1.新建文件夹
//mkdirSync里的参数是文件路径和回调函数,Sync表示同步执行,若无Sync,则表示异步执行(下同) fs.mkdirSync('./files/third',(err)=>{ //参数是报错内容,若无错误则没有 if (err) { console.log("Error"); } else { console.log("OK"); } });
2.删除文件夹
fs.rmdirSync('./files',(err)=>{ if (err) { console.log("Error"); } else { console.log("OK"); } });
3.读取文件夹
fs.readdir('./files',(err,file)=>{ if (err) { console.log("Error"); } else { console.log(file); } });
4.查看文件夹的属性及状态
//stats是返回的文件夹的属性 fs.stat('./files',(err,stats)=>{ if (err) { console.log("Error"); } else { //stats.isDirectory()判断是否是文件夹;stats.isFile()判断是否是文件 console.log(stats); console.log(stats.isDirectory()); console.log(stats.isFile()); } });
对文件操作:
1.新建文件
//参数是新建文件的路径,文件内容,成功后回调函数 fs.writeFile('./files/second/e.txt','Hello_World',(OK)=>{ console.log("OK"); }); 2.读取文件内容 fs.readFile('./files/second/e.txt',(OK,data)=>{ // 转换的是buffer,要用toString转换 console.log(data.toString()); }); //或用下面的 fs.readFile('./files/a.txt','utf8',(OK,data)=>{ // 转换的是buffer,或者用utf8转换 console.log(data); });
3.在文件后插入内容
fs.appendFile('./files/b.txt','hello~',(OK)=>{ console.log('ok'); }); 4.删除文件 const fs = require("fs"); fs.unlink('./files/f.txt',(OK)=>{ console.log('ok'); });