【Node】Node.Js--fs文件系统模块

文件包含文件形式和目录形式

1. 获取文件信息状态
javascript 复制代码
fs.stat() 异步方法
fs.stat(path,callback),path表示文件路径; callback是指回调函数,有两个参数:(err,stats),其中stats是fs.stat的实例;

fs.statsync()  同步方法
fs.statsync(path),只接收一个path变量,fs.statSync(path)其实是一个fs.stats的一个实例;

fs.stat(), fs.statsync() 的实例常用方法

1.stats.isFile(): 如果是文件则返回true,否则返回false;
2.stats.isDirectiory(): 如果是目录则返回true,否则返回false;
3.stats.isBlockDevice(): 如果是块设备则返回true,否则返回false;
4.stats.isCharacterDevice(): 如果是字符设备返回true,否则返回false;
5.stats.isSymbolicLink(): 如果是软链接返回true,否则返回false;
6.stats.isFIFO(): 如果是FIFO,则返回true,否则返回false.FIFO是UNIX中的一种特殊类型的命令管道;
7.stats.isSocket(): 如果是Socket则返回true,否则返回false;
8.stats.size(): 文件的大小(以字节为单位)。
2. 创建目录
javascript 复制代码
 fs.mkdirSync(目录的路径)
 fs.mkdir(目录路径,回调函数) 
3. 移除目录
javascript 复制代码
 fs.rmdirSync(目录的路径)
 fs.rmdir(目录路径,回调函数)
 只能移除空目录
4. 读取目录
javascript 复制代码
 fs.readdirSync(目录的路径)
 fs.readdir(目录路径,回调函数)
 读取的结果是数组
5. 写入文件
javascript 复制代码
fs.writeFileSync(文件路径,写入的数据)
fs.writeFile(文件路径,写入数据,回调函数)

如果文件不存在,会先创建文件然后写入

如果文件已经存在,会清空文件中的内容然后写入数据

6. 追加写入
javascript 复制代码
fs.appendFileSync(文件路径,写入的数据);
fs.appendFile(文件路径,写入数据,回调函数)

如果文件不存在,会先创建文件,然后写入数据

如果文件已经存在,会在文件的末尾追加写入数据

7. 读取文件
javascript 复制代码
fs.readFileSync(文件路径);
fs.readFile(文件路径,回调函数);
读取的数据格式为buffer;
8. 删除文件
javascript 复制代码
fs.unlinkSync(文件路径)
fs.unlink(文件路径,回调函数)
9. 检测文件是否目录是否存在
javascript 复制代码
fs.existsSync(文件路径);
fs.exists(文件路径,回调函数);
10. 拷贝文件
javascript 复制代码
fs.copyFileSync(原文件路径,目标文件路径);
fs.copyFile(原文件路径,目标文件路径,回调函数);
11. 流
javascript 复制代码
fs.createReadStream() 创建可读取的文件流
fs.createWriteStream() 创建可写入的文件流

后面会进行详细的补充;

On(事件名称,回调函数) 添加事件,用于监听事件

Pipe() 管道,可以将读取的流添加到写入的流

相关推荐
又写了一天BUG2 小时前
npm install安装缓慢及npm更换源
前端·npm·node.js
danplus3 小时前
node发送邮件:如何实现Node.js发信功能?
服务器·node.js·外贸开发信·邮件群发·蜂邮edm邮件营销·邮件接口·营销邮件
青稞儿3 小时前
面试题高频之token无感刷新(vue3+node.js)
vue.js·node.js
一个很帅的帅哥15 小时前
实现浏览器的下拉加载功能(类似知乎)
开发语言·javascript·mysql·mongodb·node.js·vue·express
Bang邦19 小时前
使用nvm管理Node.js多版本
前端·node.js·node多版本管理
新知图书19 小时前
Node.js快速入门
node.js
FakeOccupational21 小时前
nodejs 007:错误npm error Error: EPERM: operation not permitted, symlink
前端·npm·node.js
亦舒.21 小时前
JSDelivr & NPM CDN 国内加速节点
前端·npm·node.js
代码搬运媛21 小时前
code eintegrity npm err sha512
前端·npm·node.js
猿来如此呀1 天前
运行npm install 时,卡在sill idealTree buildDeps没有反应
前端·npm·node.js