详情阅读官方文档:
这里暂时仅提供一些简单的梳理和阅读小tips(偷懒一下
0.基本认知
对文件系统的操作可以主要分为几个主要部分:打开文件、新建文件、读写增删、关闭文件 等。
fs模块中,存在一些共用对象,这些对象记录了一些基本的文件系统信息,比如文件状态信息、目录信息、读写流对象、文件常量等等。在下文介绍函数方法时,有时会涉及对这些共用对象的操作,因此我们在这做个简单的梳理,具体可查阅文档。
对象 | 含义 |
---|---|
Class: fs.Dir | 文件夹对象 |
Class: fs.Dirent | 读取fs.Dir之后返回的对象,可以是子文件夹或者文件 |
Class: fs.FSWatcher | 文件事件监听对象,fs.watch() 方法的返回对象 |
Class: fs.StatWatcher | fs.watchFile()方法的返回对象 |
Class: fs.ReadStream | 继承于readstream对象 |
Class: fs.WriteStream | 继承于writestream对象 |
Class: fs.Stats | 存储关于一个文件的基本信息 |
Class: fs.StatsFs | 存储本文件系统的基本信息 |
fs.constants | 文件系统常量 |
另外,fs模块提供的函数方法分为三大类:
基于Promise的api、基于函数回调的api、同步执行sync的api
大多数api都包含这三类方法,大家可以根据习惯和逻辑选择自己需要的api类型
在读/写文件值得注意的一点是:
- 常规的读写流程是需要先用open方法打开文件,获取文件句柄,再传入目标文件句柄进行读read()或者写write()操作
- 但是!fs模块提供的readFile 或 writeFile可以**++直接根据文件路径,来获取文件并读取内容++**