Node.js 文件操作全解析
1. “fs” 模块概述
“fs” 模块定义了一个庞大的 API,主要是因为每个基本操作通常都有多种变体。大多数函数(如 fs.readFile() )是非阻塞、基于回调的异步函数。不过,通常每个函数都有一个同步阻塞变体,如 fs.readFileSync() 。在 Node 10 及更高版本中,许多函数还有基于 Promise 的异步变体,如 fs.promises.readFile() 。
大多数 “fs” 函数的第一个参数是一个字符串,用于指定要操作的文件的路径(文件名加上可选的目录名)。但也有一些函数支持以整数 “文件描述符” 作为第一个参数,而不是路径。这些变体的名称以字母 “f” 开头。例如, fs.truncate() 截断由路径指定的文件,而 fs.ftruncate() 截断由文件描述符指定的文件。还有基于 Promise 的 fs.promises.truncate() ,它期望一个路径,以及另一个作为 FileHandle 对象方法实现的基于 Promise 的版本。最后,“fs” 模块中有一些函数的变体名称以字母 “l” 开头。这些 “l” 变体与基本函数类似,但不遵循文件系统中的符号链接,而是直接对符号链接本身进行操作。
2. 路径、文件描述符和 FileHandles
2.1 路径处理
为了使用 “fs” 模块处理文件,首先需要能够指定要处理的文件。文件通常通过路径指
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



