最适合网络开发者的网站
NodeJS。初学者课程。W3Schools 英文版

尿素

Node.js 文件系统模块


Node.js 作为文件服务器

Node.js 文件系统模块允许您使用计算机上的文件系统。

要包含文件系统模块,请使用 require() 方法:

var fs = require('fs');

文件系统模块的常见用途:

  • 读取文件
  • 创建文件
  • 更新文件
  • 删除文件
  • 重命名文件

读取文件

fs.readFile() 方法用于读取计算机上的文件。

假设我们有以下 HTML 文件(与 Node.js 位于同一文件夹中):

演示文件1.html

<html>
<body>
<h1>我的标题</h1>
<p>我的段落。</p>
</body>
</html>

创建一个读取 HTML 文件并返回内容的 Node.js 文件:

例子

var http = require('http');
var fs = require('fs');
http.createServer(函数(req,res){
fs.readFile('demofile1.html', 函数(err, 数据) {
res.writeHead(200,{'Content-Type':'text/html'});
res.写入(数据);
返回 res.end();
  });
}).监听(8080);
运行示例 »

将上述代码保存在名为“demo_readfile.js”的文件中,并启动该文件:

启动demo_readfile.js:

C:\用户\你的名字&gt;node demo_readfile.js

如果您在计算机上执行相同的步骤,您将看到与示例相同的结果: http://本地主机:8080


创建文件

文件系统模块具有创建新文件的方法:

  • fs.appendFile()
  • fs.open()
  • fs.writeFile()

fs.appendFile() 方法将指定的内容附加到文件。如果文件不存在,则将创建该文件:

例子

使用 appendFile() 方法创建一个新文件:

var fs = require('fs');

fs.appendFile('mynewfile1.txt', 'Hello content!', function (err) {
如果 (err) 抛出错误;
console.log('已保存!');
});
运行示例 »

fs.open() 方法将“标志”作为第二个参数,如果标志为“w”(代表“写入”),则打开指定文件进行写入。如果文件不存在,则创建一个空文件:

例子

使用 open() 方法创建一个新的空文件:

var fs = require('fs');

fs.open('mynewfile2.txt', 'w', 函数 (err, 文件) {
如果 (err) 抛出错误;
console.log('已保存!');
});
运行示例 »

fs.writeFile() 方法替换指定的文件和内容(如果存在)。如果文件不存在,则将创建一个包含指定内容的新文件:

例子

使用 writeFile() 方法创建一个新文件:

var fs = require('fs');

fs.writeFile('mynewfile3.txt', 'Hello content!', function (err) {
如果 (err) 抛出错误;
console.log('已保存!');
});
运行示例 »

更新文件

文件系统模块具有更新文件的方法:

  • fs.appendFile()
  • fs.writeFile()

fs.appendFile() 方法将指定的内容附加到指定文件的末尾:

例子

将“这是我的文本。”附加到文件“mynewfile1.txt”的末尾:

var fs = require('fs');

fs.appendFile('mynewfile1.txt', '这是我的文本。', function (err) {
如果 (err) 抛出错误;
console.log('已更新!');
});
运行示例 »

fs.writeFile() 方法替换指定的文件和内容:

例子

替换文件“mynewfile3.txt”的内容:

var fs = require('fs');

fs.writeFile('mynewfile3.txt', '这是我的文本', function (err) {
如果 (err) 抛出错误;
console.log('已替换!');
});
运行示例 »

删除文件

要使用文件系统模块删除文件,请使用 fs.unlink() 方法。

fs.unlink() 方法删除指定的文件:

例子

删除“mynewfile2.txt”:

var fs = require('fs');

fs.unlink('mynewfile2.txt',函数(err){
如果 (err) 抛出错误;
console.log('文件已删除!');
});
运行示例 »

重命名文件

要使用文件系统模块重命名文件,请使用 fs.rename() 方法。

fs.rename() 方法重命名指定的文件:

例子

将“mynewfile1.txt”重命名为“myrenamedfile.txt”:

var fs = require('fs');

fs.rename('mynewfile1.txt', 'myrenamedfile.txt', 函数 (err) {
如果 (err) 抛出错误;
console.log('文件已重命名!');
});
运行示例 »

上传文件

您还可以使用 Node.js 将文件上传到您的计算机。

了解详情 Node.js 上传文件 章节。