【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() 管道,可以将读取的流添加到写入的流

相关推荐
~甲壳虫3 小时前
说说webpack中常见的Plugin?解决了什么问题?
前端·webpack·node.js
~甲壳虫4 小时前
说说webpack中常见的Loader?解决了什么问题?
前端·webpack·node.js
~甲壳虫4 小时前
说说webpack proxy工作原理?为什么能解决跨域
前端·webpack·node.js
熊的猫5 小时前
JS 中的类型 & 类型判断 & 类型转换
前端·javascript·vue.js·chrome·react.js·前端框架·node.js
前端青山14 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js
GDAL17 小时前
npm入门教程1:npm简介
前端·npm·node.js
郑小憨1 天前
Node.js简介以及安装部署 (基础介绍 一)
java·javascript·node.js
lin-lins1 天前
模块化开发 & webpack
前端·webpack·node.js
GDAL2 天前
npm入门教程13:npm workspace功能
前端·npm·node.js
wumu_Love2 天前
npm 和 node 总结
前端·npm·node.js