📜  Node.js fs.appendFile()函数

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

Node.js fs.appendFile()函数

fs.appendFile() 方法用于将给定数据异步附加到文件中。如果新文件不存在,则会创建一个新文件。 options 参数可用于修改操作的行为。

句法:

fs.appendFile( path, data[, options], callback )

参数:此方法接受上面提到的四个参数,如下所述:

  • path:它是一个字符串、缓冲区、URL 或数字,表示将附加到的源文件名或文件描述符。
  • 数据:它是一个字符串或缓冲区,表示必须附加的数据。
  • options:它是一个字符串或对象,可用于指定将影响输出的可选参数。它具有三个可选参数:
    • encoding:它是一个字符串,它指定文件的编码。默认值为“utf8”。
    • mode:它是一个整数,指定文件模式。默认值为“0o666”。
    • flag:它是一个字符串,它指定附加到文件时使用的标志。默认值为“a”。
  • 回调:它是一个在方法执行时将被调用的函数。
    • err:如果方法失败会抛出一个错误。

下面的示例说明了 Node.js 中的fs.appendFile() 方法

示例 1:此示例显示将给定文本附加到文件中。

// Node.js program to demonstrate the
// fs.appendFile() method
  
// Import the filesystem module
const fs = require('fs');
  
// Get the file contents before the append operation
console.log("\nFile Contents of file before append:",
  fs.readFileSync("example_file.txt", "utf8"));
  
fs.appendFile("example_file.txt", "World", (err) => {
  if (err) {
    console.log(err);
  }
  else {
    // Get the file contents after the append operation
    console.log("\nFile Contents of file after append:",
      fs.readFileSync("example_file.txt", "utf8"));
  }
});

输出:

File Contents of file before append: Hello

File Contents of file after append: HelloWorld

示例2:此示例显示了使用可选参数来更改操作的文件编码、模式和标志。

// Node.js program to demonstrate the
// fs.appendFile() method
  
// Import the filesystem module
const fs = require('fs');
  
// Get the file contents before the append operation
console.log("\nFile Contents of file before append:",
  fs.readFileSync("example_file.txt", "utf8"));
    
fs.appendFile("example_file.txt", " - GeeksForGeeks",
  { encoding: "latin1", mode: 0o666, flag: "a" },
  (err) => {
    if (err) {
      console.log(err);
    }
    else {
      // Get the file contents after the append operation
      console.log("\nFile Contents of file after append:",
        fs.readFileSync("example_file.txt", "utf8"));
    }
  });

输出:

File Contents of file before append: This is a test file

File Contents of file after append: This is a test file - GeeksForGeeks

参考: https://nodejs.org/api/fs.html#fs_fs_appendfile_path_data_options_callback