Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时,它可以让 JavaScript 在服务器端运行,这使得前端开发者可以使用 JavaScript 来进行服务器端的开发。Node.js 也提供了一些内置模块,其中就包括了文件系统模块(fs),通过它我们可以轻松地管理本地文件和目录。
文件系统模块(fs)
Node.js 的文件系统模块(fs)提供了一系列的 API,可以帮助我们操作本地文件和目录。这些 API 可以分为同步和异步两种方式,其中同步的 API 会阻塞代码的执行,而异步的 API 则不会。
异步 API
我们先来看一下异步 API:
1. 读取文件
我们可以使用 fs.readFile()
方法来读取一个文件。这个方法接收两个参数,第一个参数是文件的路径,第二个参数是一个回调函数,回调函数的第一个参数是错误对象,如果读取文件成功,则错误对象为 null,第二个参数则是读取到的文件内容。
----- -- - -------------- ----------------------- ----- ----- -- - -- ----- - ----------------- - ---- - ----------------------------- - ---
2. 写入文件
我们可以使用 fs.writeFile()
方法来写入一个文件。这个方法接收三个参数,第一个参数是文件的路径,第二个参数是要写入的内容,第三个参数是一个回调函数,回调函数的第一个参数是错误对象,如果写入文件成功,则错误对象为 null。
----- -- - -------------- ------------------------ ------ -------- ----- -- - -- ----- - ----------------- - ---- - --------------------- - ---
3. 创建目录
我们可以使用 fs.mkdir()
方法来创建一个目录。这个方法接收两个参数,第一个参数是要创建的目录的路径,第二个参数是一个回调函数,回调函数的第一个参数是错误对象,如果创建目录成功,则错误对象为 null。
----- -- - -------------- ---------------- ----- -- - -- ----- - ----------------- - ---- - ----------------------- - ---
4. 删除目录
我们可以使用 fs.rmdir()
方法来删除一个目录。这个方法接收两个参数,第一个参数是要删除的目录的路径,第二个参数是一个回调函数,回调函数的第一个参数是错误对象,如果删除目录成功,则错误对象为 null。
----- -- - -------------- ---------------- ----- -- - -- ----- - ----------------- - ---- - ----------------------- - ---
同步 API
接下来我们看一下同步 API:
1. 读取文件
我们可以使用 fs.readFileSync()
方法来读取一个文件。这个方法接收一个参数,就是文件的路径,它会返回一个包含文件内容的 Buffer 对象。
----- -- - -------------- ----- ---- - ---------------------------- -----------------------------
2. 写入文件
我们可以使用 fs.writeFileSync()
方法来写入一个文件。这个方法接收两个参数,第一个参数是文件的路径,第二个参数是要写入的内容。
----- -- - -------------- ---------------------------- ------ --------- ---------------------
3. 创建目录
我们可以使用 fs.mkdirSync()
方法来创建一个目录。这个方法接收一个参数,就是要创建的目录的路径。
----- -- - -------------- --------------------- -----------------------
4. 删除目录
我们可以使用 fs.rmdirSync()
方法来删除一个目录。这个方法接收一个参数,就是要删除的目录的路径。
----- -- - -------------- --------------------- -----------------------
总结
通过 Node.js 的文件系统模块,我们可以轻松地管理本地文件和目录。在使用这些 API 的时候,我们需要注意异步和同步的区别,尽量使用异步 API 来避免阻塞代码的执行。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/662b513fd3423812e48d3bca