Node.js 文件系统模块允许您使用计算机上的文件系统。
要包含文件系统模块,请使用 require()
方法:
var fs = require('fs');
文件系统模块的常见用途:
这个fs.readFile()
方法用于读取计算机上的文件。
假设我们有以下 HTML 文件(与 Node.js 位于同一文件夹中):
演示文件1.html
<html>
<body>
<h1>My Header</h1>
<p>My paragraph.</p>
</body>
</html>
创建一个读取 HTML 文件并返回内容的 Node.js 文件:
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\
Your Name>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) {
if (err) throw err;
console.log('Saved!');
});
运行示例 »
这个fs.open()
方法采用"flag"作为第二个参数,如果标志为"w" for "writing",则打开指定文件进行写入。如果该文件不存在,则创建一个空文件:
使用 open() 方法创建一个新的空文件:
var fs = require('fs');
fs.open('mynewfile2.txt', 'w', function (err, file) {
if (err) throw err;
console.log('Saved!');
});
运行示例 »
这个fs.writeFile()
方法替换指定的文件和内容(如果存在)。如果该文件不存在,将创建一个包含指定内容的新文件:
使用 writeFile() 方法创建一个新文件:
var fs = require('fs');
fs.writeFile('mynewfile3.txt', 'Hello content!', function (err) {
if (err) throw err;
console.log('Saved!');
});
运行示例 »
文件系统模块具有更新文件的方法:
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('Updated!');
});
运行示例 »
这个fs.writeFile()
方法替换指定的文件和内容:
替换文件"mynewfile3.txt"的内容:
var fs = require('fs');
fs.writeFile('mynewfile3.txt', 'This is my text', function (err) {
if (err) throw err;
console.log('Replaced!');
});
运行示例 »
要使用文件系统模块删除文件,请使用fs.unlink()
方法。
这个fs.unlink()
方法删除指定文件:
删除"mynewfile2.txt":
var fs = require('fs');
fs.unlink('mynewfile2.txt', function (err) {
if (err) throw err;
console.log('File deleted!');
});
运行示例 »
要使用文件系统模块重命名文件,请使用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('File Renamed!');
});
运行示例 »
您还可以使用 Node.js 将文件上传到您的计算机。
请阅读我们的方法Node.js 上传文件章节。
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!