如何使用Javascript读写文件
文件的读写操作可以通过一些命令进行。但是需要导入一个模块来执行这些操作。所需的模块是“ fs ”,它被称为JavaScript中的文件系统模块。
文件的写入操作
导入了文件系统模块后,可以调用writeFile()方法来进行写入操作。writeFile()方法用于在JavaScript中写入文件。该方法的语法如下所示 –
writeFile(path,inputData,callBackFunction)
writeFile()函数接受三个参数 –
- Path - 第一个参数是要写入输入数据的文件的路径或文件名。
如果文件已存在,则文件中的内容将被删除,用户输入的内容将被更新;如果文件不存在,则在给定的路径中创建该文件,并将输入信息写入其中。
- inputData - 第二个参数是输入数据,其中包含要写入已打开文件的数据。
-
callBackFuntion - 第三个参数是回调函数,它以错误作为参数,并在写入操作失败时显示错误。
示例1
以下是JavaScript中文件写入操作的示例。
const fs = require('fs')
let fInput = "You are reading the content from Tutorials Point"
fs.writeFile('tp.txt', fInput, (err) => {
if (err) throw err;
else{
console.log("The file is updated with the given data")
}
})
如果您打开输入文件,可以观察到其中的写入数据,如下图所示−
从文件中读取
导入File System模块后,可以使用readFile()函数来在JavaScript中读取文件。
语法
读取文件的语法如下−
readFile(path, format, callBackFunc)
readFile()函数接受三个参数,其中一个是可选参数。
- Path − 第一个参数是要读取内容的测试文件的路径。如果当前位置或目录与要打开和读取的文件所在的目录相同,则只需给出文件名。
-
Format − 第二个参数是可选参数,是文本文件的格式。格式可以是ASCII,utf-8等。
-
CallBackFunc − 第三个参数是回调函数,它以错误作为参数,并显示由于错误引起的故障。
示例2
以下示例尝试读取前面示例中填充的文件的内容并打印出来−
const fs = require('fs')
fs.readFile('tp.txt', (err, inputD) => {
if (err) throw err;
console.log(inputD.toString());
})
输出
以下是上述示例的输出结果−
You are reading the content from Tutorials Point
在控制台中显示的文字是给定文件中的文字。
示例3
以下是使用fs模块在node.js上读取和写入文件的综合示例。让我们创建一个名为main.js的JS文件,其中包含以下代码−
var fs = require("fs");
console.log("Going to write into existing file");
// Open a new file with name input.txt and write Simply Easy Learning! to it.
fs.writeFile('input.txt', 'Simply Easy Learning!', function(err) {
console.log("Data written successfully!");
console.log("Let's read newly written data");
// Read the newly written file and print all of its content on the console
fs.readFile('input.txt', function (err, data) {
console.log("Asynchronous read: " + data.toString());
});
});