一.fs模块概述
2.fs异步写入
/**
* 新建一个文件夹,座右铭.txt,写入内容三人行必有我师焉
*/
//1.导入fs模块
const fs = require('fs');
//2.写入文件
fs.writeFile('./座右铭.txt','三人行必有我师焉',err =>{
//err写入失败:错误对象,写入成功:null err 可以随便写,换一个单词也可以
if(err){
console.log('写入失败');
}
console.log('写入成功');
})
3.同步和异步
fs.wirteFile:是异步方法,代码执行到写入writeFile方法时,主线程会继续往下一个方法运行代码,写入的操作交给另一个线程,压缩在队列中,主线程走完后,再从队列中来执行写入操作。
fs.writeFileSync:方法时同步方法,代码执行到writeFileSync方法时,主线程会等写入完成后再进行后续代码。
4.fs追加写入
1.
fs.appendFile('./座右铭.txt',',则其善者而行之,其不善者而改之',err ={
if(err){
console.log('写入失败')
}
})
2.fs.appendFileSync
3.{flag:'a'}:加上这个也有追加写入的意思
5. 流式写入 \r\n 换行
/**
* 观书有感.txt
*/
//1.导入fs
const fs = require('fs');
//2.创建写入流对象
const ws = fs.createWriteStream('./观书有感.txt');
//3.write
ws.write('半亩方塘一鉴开\r\n');
ws.write('天光云影共徘徊\r\n');
//4.关闭通道
ws.close();
6.文件读取
7.流式读取
流式读取就是一块一块的读文件,默认读一块的大小是64kb
8.文件复制
第二种方法流式读取,流式写入,理想状态下只需64kb内存就可以。第一种方法是把文件整个读取到内存中,所以第二种方法更省内存。
9.文件的重命名和移动
重命名,把座右铭.txt改为论语.txt
移动文件
10.文件的删除
删除的第二种方法,node.js14.4版本的方法。
11.创建文件夹
//1.导入fs模块
const fs = require('fs');
//2.创建文件夹
fs.mkdir('./html',err =>{
if(err){
consolel.log('创建失败~');
return;
}
console.log('创建成功');
})
递归创建文件夹:recursive:true,就是启用递归创建。
12.文件夹的读取
读取的是文件夹的名字
13.文件夹删除
递归删除
14.查看资源状态
查看是否是文件或者文件夹