我希望能够将大文件(大于1GB)作为字符串读入node.js(我并不真正在乎效率),完成后,我希望能够使用面具,例如FILE_XXX_XXXX_XXXXXXXX,X是任何字符,并将结果存储在数组中。目前,我的方法是使用fs.readFileSync(srcPath,'utf8');但是这导致错误错误:无法创建长度超过0x3fffffe7个字符的字符串我环顾四周,意识到“管道”,但是不确定如何实现(或者它是否甚至适合我想做的事情)
您正在寻找的是fs.createReadStream:
const fs = require('fs');
const readStream = fs.createReadStream('myfile.txt');
readStream
.on('data', function(chunk) {
// check if chunk.toString() contains what you're looking for here
})
.on('end', function () {
console.log('done');
});
您可以使用正则表达式来匹配您的掩码,请参见https://regexr.com/