当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js fs-extra outputFile()用法及代码示例


outputFile()函数将数据写入给定文件。它与writeFile()函数相似,不同之处在于,如果不存在必须向其写入数据的文件,则该文件将由该函数本身创建。即使该文件位于不存在的目录中,它也将由函数本身创建。

用法:

fs.outputFile(file,data,options,callback)

参数:该函数接受上述和以下所述的四个参数。

  • file:它是一个字符串,它定义了必须在其中写入文件的路径。
  • data:它是将写入文件的字符串,Buffer,TypedArray或DataView。
  • options:它是用于指定可选参数的字符串或对象。可用的选项有:
  • callback:函数完成任务后将调用它。这将导致错误或成功。也可以用Promise代替回调函数。
  1. encoding:它是一个定义文件编码的字符串。默认情况下,该值为 utf-8。

  2. mode:它是一个定义文件模式的整数值。默认情况下,该值为 0o666。

  3. flag:它是一个字符串值,用于定义写入文件时使用的标志。默认情况下,该值为 ‘w’。您可以在此处检查标志。

  4. signal:AbortSignal 允许中止 in-progress 输出文件。

返回值:它不返回任何东西。

请按照以下步骤实现该函数:

  1. 可以使用以下命令安装该模块:

    npm install fs-extra
  2. 安装模块后,可以使用以下命令检查已安装模块的版本:

    npm ls fs-extra

  3. 使用以下命令创建一个名称为index.js的文件,并在文件中需要fs-extra模块

    const fs = require('fs-extra');
  4. 要运行文件,请在终端中输入以下命令:

    node index.js

项目结构将如下所示:

范例1:

index.js


// Requiring module
import  fs from "fs-extra";
  
// file already exist
// so data will be written
// onto the file
const file = "file.txt";
  
// This data will be
// written onto file
const data = "This is geeksforgeeks";
  
// Function call
// Using callback function
fs.outputFile(file, data, (err) => {
  if (err) return console.log(err);
  console.log("Data successfully written onto the file");
  console.log("Written data is:");
  //   Reading data after writing on file
  console.log(fs.readFileSync(file, "utf-8"));
});

输出:

范例2:

index.js


// Requiring module
import fs from "fs-extra";
  
// file and directory
//  does not  exist
// so both  will be created
// and data will be written
// onto the file
const file = "dir/file.txt";
  
// This data will be
// written onto file
const data = "This data will be written on file which doesn't exist";
  
// Additional options
const options = {
  encoding:"utf-8",
  flag:"w",
  mode:0o666,
};
  
// Function call
// Using Promises
fs.outputFile(file, data, options)
  .then(() => {
    console.log("File Written successfully");
    console.log("Content of file:");
    console.log(fs.readFileSync(file, "utf-8"));
  })
  .catch((e) => console.log(e));

输出:

参考: https://github.com/jprichardson/node-fs-extra/blob/HEAD/docs/outputFile.md


相关用法


注:本文由纯净天空筛选整理自pritishnagpal大神的英文原创作品 Node.js fs-extra outputFile() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。