📜  fs 写入流追加 - Javascript (1)

📅  最后修改于: 2023-12-03 15:00:51.328000             🧑  作者: Mango

使用 fs 写入流追加数据 - JavaScript

简介

使用 Node.js 中的 fs 模块,可以使用文件系统提供的接口读写文件。本文将介绍如何使用 fs 模块中提供的 createWriteStream 方法,向已有文件中追加数据。

实现

在 Node.js 中,通过调用 createWriteStream 方法创建一个可写流。该方法接收两个参数:

  • 第一个参数为要写入的文件路径;
  • 第二个参数为一个对象,配置写入流的一些参数。

我们要实现的是向已有文件追加数据,因此为了不覆盖原有数据,需要将写入流的标志设置为 'a',表示以追加(append)模式写入数据。

// 导入 fs 模块
const fs = require('fs');
// 定义写入的文件路径
const filePath = 'path/to/your/file';
// 创建写入流(以追加模式写入)
const writeStream = fs.createWriteStream(filePath, { flags: 'a' });

注意:

追加模式下,如果写入的文件不存在,fs 模块会自动创建文件。如果文件已存在,则程序将从原有数据的结尾处写入数据。

接下来,就可以通过调用 write 方法,将数据写入文件中了。你可以将要写入的数据传递给 write 方法,也可以将一个可读流(pipe) 传递给 write 方法。

writeStream.write('Hello world!');

最终,执行结束后需要关闭写入流,以释放资源。

writeStream.end();

完整实现代码如下:

const fs = require('fs');

const filePath = 'path/to/your/file';

const writeStream = fs.createWriteStream(filePath, { flags: 'a' });

writeStream.write('Hello, world!');
writeStream.end();
结语

通过 fs 模块提供的 createWriteStream 方法,我们可以实现向已有文件中追加数据,完成文件内容的更新等操作。详细接口文档可以参考 Node.js 官方文档。