【发布时间】:2017-02-23 02:52:01
【问题描述】:
我正在尝试(通过流)读取 Lambda 函数中的一个大文件。我的目标是只阅读前几行并查找一些信息。 S3 中的输入文件似乎包含十六进制字符 (NUL),以下代码在遇到 NUL 字符时停止读取该行并转到下一行。我想知道如何在查找行中的信息之前阅读整行并替换/删除 NUL 字符。以下是无法按预期工作的代码:
var readline = require('line-reader');
var readStream = s3.getObject({Bucket: S3Bucket, Key: fileName}).createReadStream();
readline.eachLine(readStream, {separator: '\n', encoding: 'utf8'}, function(line) {
console.log('Line ',line);
});
【问题讨论】:
-
嗯,这与 AWS S3 没有任何关系。它只与您正在使用的任何行读取转换流库有关......
-
正确,但我想提供完整的上下文:)
-
如果你想提供完整的上下文,你会告诉我们你正在使用什么线阅读包。我们可以猜测,但最好告诉我们。
-
我很抱歉,它是行阅读器,它在我提供的代码中。顺便说一句,我也尝试过 readline 包,但也没有帮助。
标签: node.js amazon-s3 aws-lambda