Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Node.js 文件系统模块


Node.js 作为文件服务器

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

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

var fs = require('fs');

文件系统模块的常用用途

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

读取文件

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

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

demofile1.html

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

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

示例

var http = require('http');
var fs = require('fs');
http.createServer(function (req, res) {
  fs.readFile('demofile1.html', function(err, data) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write(data);
    return res.end();
  });
}).listen(8080);
运行示例 »

将上面的代码保存到名为 "demo_readfile.js" 的文件中,然后启动该文件

启动 demo_readfile.js

C:\Users\你的姓名>node demo_readfile.js

如果您在您的计算机上按照相同的步骤操作,您将看到与示例相同的结果:https://127.0.0.1:8080



创建文件

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

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

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

示例

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

var fs = require('fs');

fs.appendFile('mynewfile1.txt', 'Hello content!', function (err) {
  if (err) throw err;
  console.log('已保存!');
});
运行示例 »

fs.open() 方法接受 "flag" 作为第二个参数,如果 flag 为 "w"(表示 "写入"),则打开指定文件以进行写入。如果文件不存在,则创建一个空文件

示例

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

var fs = require('fs');

fs.open('mynewfile2.txt', 'w', function (err, file) {
  if (err) throw err;
  console.log('已保存!');
});
运行示例 »

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

示例

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

var fs = require('fs');

fs.writeFile('mynewfile3.txt', 'Hello content!', function (err) {
  if (err) throw err;
  console.log('已保存!');
});
运行示例 »

更新文件

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

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

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

示例

将 "This is my text." 追加到文件 "mynewfile1.txt" 的末尾

var fs = require('fs');

fs.appendFile('mynewfile1.txt', ' This is my text.', function (err) {
  if (err) throw err;
  console.log('已更新!');
});
运行示例 »

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

示例

替换文件 "mynewfile3.txt" 的内容

var fs = require('fs');

fs.writeFile('mynewfile3.txt', 'This is my text', function (err) {
  if (err) throw err;
  console.log('已替换!');
});
运行示例 »

删除文件

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

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

示例

删除 "mynewfile2.txt"

var fs = require('fs');

fs.unlink('mynewfile2.txt', function (err) {
  if (err) throw err;
  console.log('文件已删除!');
});
运行示例 »

重命名文件

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

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

示例

将 "mynewfile1.txt" 重命名为 "myrenamedfile.txt"

var fs = require('fs');

fs.rename('mynewfile1.txt', 'myrenamedfile.txt', function (err) {
  if (err) throw err;
  console.log('文件已重命名!');
});
运行示例 »

上传文件

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

在我们的 Node.js 上传文件 章节中了解如何操作。


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.