📜  解释使用 JavaScript 读取和写入文件

📅  最后修改于: 2022-05-13 01:56:52.293000             🧑  作者: Mango

解释使用 JavaScript 读取和写入文件

在客户端,您无法在 JavaScript 浏览器中读取或写入文件。 Node.js 中的 fs 模块可用于在服务器端完成此操作。它具有在文件系统上读取和写入文件的同步和异步方法。让我们演示一些使用 node.js fs 模块读取和写入文件的示例。

fs.readFile() 和 rs.writeFile() 方法用于使用 javascript 读取和写入文件。使用 fs.readFile()函数读取文件,这是一个内置方法。该技术将整个文件读入内存并将其存储在缓冲区中。

句法:

fs.readFile( file_name, encoding, callback_function )

参数:

  • 文件名:它包含要读取的文件名,如果文件保存在其他位置,则包含整个路径。
  • encoding:它存储文件的编码。 “utf8”是默认设置。
  • 回调函数:这是在读取文件后调用的函数。它需要两个输入:
  • err:如果有错误。
  • 数据:文件的内容。
  • 返回值:它返回文件中包含的内容,以及可能发生的任何错误。

fs.writeFile()函数用于以异步方式将数据写入文件。如果文件已经存在,它将被替换。

句法:

fs.writeFile( file_name, data, options, callback )

参数:

  • file_name :它是一个字符串、一个缓冲区、一个 URL 或一个文件描述整数,用于指定要写入的文件的位置。当您使用文件描述符时,它的函数类似于 fs.写()方法。
  • data : 将发送到文件的数据是字符串、 Buffer、 TypedArray 或 DataView。
  • options:它是一个字符串或对象,可用于指示可选的输出选项。它包括另外三个可以选择的参数。
  • encoding :它是一个字符串值,表示文件的编码。 “utf8”是默认设置。
  • mode :文件模式由一个称为 mode 的整数指定。 0o666 是默认值。
  • flag :这是一个表示文件写入标志的字符串。 “w”是默认值。
  • callback : 该函数在方法运行时被调用。
  • err :如果进程失败,这就是将抛出的错误。

让我们通过一个示例来了解如何写入和读取文件:

在下面的示例中,我们使用 writeFile() 方法创建文件并读取文件 readFile() 方法的内容。

项目结构:

index.js
var fs = require("fs");
console.log(" Writing into an file ");
  
// Sample.txt is an empty file
fs.writeFile(
  "sample.txt",
  "Let's write a few sentences in the file",
  function (err) {
    if (err) {
      return console.error(err);
    }
  
    // If no error the remaining code executes
    console.log(" Finished writing ");
    console.log("Reading the data that's written");
  
    // Reading the file
    fs.readFile("sample.txt", function (err, data) {
      if (err) {
        return console.error(err);
      }
      console.log("Data read : " + data.toString());
        
    });
  }
);


输出: