如何替换文本在JavaScript文件

时间:2019-02-02 17:46:56

标签: javascript node.js

我在做检测的数量从001串程序 - 300,并与000来替换它我会怎么做呢? 现在,该文件只是一个txt文件,但是我要移至大小为4GB的文件。

1 个答案:

答案 0 :(得分:1)

如果您需要快速但不是最有效的本地工具解决方案并且可以使用最新的Node.js版本,则可以尝试以下方式:

'use strict';

const fs = require('fs');
const readline = require('readline');

(async function main() {
  try {
    const inputStream = fs.createReadStream('input.txt');
    const outputFile = await fs.promises.open('output.txt', 'w');

    const rl = readline.createInterface({
      input: inputStream,
      crlfDelay: Infinity
    });

    for await (const line of rl) {
      await outputFile.write(`${line.replace(/(^|\D)(?:[0-2]\d\d|300)(\D|$)/g, '$1000$2')}\n`);
    }
  } catch (err) {
    console.error(err);
  }
})();

查看详细信息:

fs Promises API

rl[Symbol.asyncIterator]()

Example: Read File Stream Line-by-Line