NodeJS FS模块异步与同步操作详解及实例

0 下载量 164 浏览量 更新于2024-08-31 收藏 112KB PDF 举报
NodeJS学习笔记之FS文件模块深入解析 在Node.js中,文件系统(FS)模块是处理文件和目录的重要工具,它封装了标准的POSIX文件I/O操作,提供了异步和同步两种方式来处理文件操作。模块的引入通过`require("fs")`实现,这使得开发者能够方便地进行文件读写、删除、重命名以及状态检查等任务。 1. 异步与同步方法 - Node.js的FS模块中的所有方法都提供异步版本,用于非阻塞I/O,提高性能。异步方法需要一个回调函数作为最后一个参数,这个函数会在操作完成后被调用,回调的第一参数通常是错误对象,若无错误则为`null`或`undefined`。 - 同步方法则在遇到错误时会立即抛出异常,可以使用`try...catch`结构捕获并处理这些错误。 2. 示例应用 - 读取文件示例: - 首先创建一个名为"bb.txt"的文件,并写入内容。 - 使用`fs.readFile`异步读取,指定编码为"utf8",错误将被抛出,成功则输出文件内容。 - 如果不设置编码,读取结果将以二进制`Buffer`形式呈现,需要进一步转换。 - 写入文件示例: - 使用`fs.writeFile`异步写入文本到"bb.txt",如果写入失败会抛出错误,成功后打印确认信息。 - 常用操作: - 删除文件:`fs.unlink`,操作成功时回调打印'success'。 - 重命名文件:`fs.rename`,重命名成功时回调打印'renamesuccess'。 - 文件状态检查:`fs.stat`,获取文件信息,包括大小、权限等,操作成功回调接收两个参数,第一个是错误,第二个是文件状态对象。 总结来说,Node.js的FS模块为开发人员提供了强大的文件操作能力,异步设计使得在高并发环境下保持高效,而同步方法则便于处理异常。通过理解并熟练使用这些API,开发人员可以更有效地管理和操作文件系统,实现各种基于Node.js的应用需求。