乐趣区

关于前端:每日灵魂一问-nodejs的fs模块常用方法

node.js 的 fs 模块 & 罕用办法

fs 是什么???

fs 模块也是 node 的 外围模块 之一
所有与 文件相干的操作 都是通过 fs 外围模块来实现的
包含 增删改查读写
所有的办法都分为 同步和异步 两种实现
sync后缀的为 同步

罕用办法

1.readFile 读文件 readFile(filename,[options],callback);

* 第一个参数: 读取文件的门路或文件描述符;* 第二个参数: options,默认值为 null,写法一:{ebcoding: 'utf8',flag: r} 
              encoding 示意:(编码,默认为 null)flag 示意:(标识位,默认为 r 读 r+ 读写(没有会报错)w 写 w+ 读写)写法二:间接传入 encoding
* 第三个参数: 回调函数 内置参数 err
 
const fs = require("fs"); 
fs.readFile("1.txt", "utf8", (err, data) => {console.log(err); 
});
fs.readFile("1.txt", {encoding:'utf8', flag: 'r'}, (err, data) => {console.log(err); 
});

2.writeFile 写文件 fs.writeFile(filename,content,callback)

* 第一个参数: 为写入文件的门路或文件描述符;* 第二个参数: 为写入的数据,类型为 String 或 Buffer;* 第三个参数: 回调函数 内置参数 err

const fs = require("fs");
//Hello world 为写入的内容 
fs.writeFile("2.txt", "Hello world", err => {if (!err) {fs.readFile("2.txt", "utf8", (err, data) => {console.log(data); // Hello world
        });
    }
});

3.appendFile 追加文件 fs.appendFile(filename,content,callback)

* 第一个参数为写入文件的门路或文件描述符;* 第二个参数为写入的数据,类型为 String 或 Buffer;* 第三个参数: 回调函数 内置参数 err

const fs = require("fs");
fs.appendFile("3.txt", "world", err => {if (!err) {fs.readFile("3.txt", "utf8", (err, data) => {console.log(data); // world
       }); 
  } 
});

4. 拷贝文件 copyFile(sourcePath,targetPath,callback)

* 第一个参数为被拷贝的源文件门路
* 第二个参数为拷贝到的指标文件门路,* 第三个参数是回调函数

const fs = require("fs");

fs.copyFile("3.txt", "4.txt", () => {fs.readFile("4.txt", "utf8", (err, data) => {console.log(data); // world
    });
});

5. 创立目录

fs.mkdir(path,callback)

6. 读取目录

fs.readdir(path,callback)

7. 删除目录

fs.unlink(path,callback)

退出移动版