javascript - 我怎样才能在 Javascript 中只读取文件的第一行?
问题描述
我试图在 javascript 中仅读取 CSV 文件的第一行而不读取整个文件。到目前为止,我在 SO 上找到的解决方案仅包括使用 .split 仍然读取整个文件并按换行符拆分。我还尝试使用 FileReader 进度在第一行之后停止,但您无法控制正在读取的数量。我怎样才能使用进度或其他方法只获取第一行而不读取文件的其余部分?
解决方案
有一些已发布的库允许逐行读取文件。
在浏览器中,有line-navigator:
var navigator = new LineNavigator(file[, options]);
navigator.readLines(indexToStartWith, numberOfLines,
function (err, index, lines, isEof, progress) {
// handle result here
});
在 node.js 中,有line-reader:
var lineReader = require('line-reader');
// read line by line:
lineReader.open('file.txt', function(err, reader) {
if (err) throw err;
if (reader.hasNextLine()) {
reader.nextLine(function(err, line) {
try {
if (err) throw err;
console.log(line);
} finally {
reader.close(function(err) {
if (err) throw err;
});
}
});
}
else {
reader.close(function(err) {
if (err) throw err;
});
}
});
推荐阅读
- c++ - vector.back().back() 返回什么?
- angular - withLatestFrom 用于热门的 observables
- macos - 在applescript(使用MacOS automator)中,我可以在一段代码中操纵两个动作的顺序吗?(以利于速度)
- excel - 为什么在 VBA 中使用 VLookup 引用另一个 Excel 文件时会出现 #N/A?
- amazon-web-services - 加密环境变量并在 terraform 代码中调用它
- python - 使用 miniupnp 在 Internet 上打开套接字服务器
- python - 在 Python 中返回一个连续的终端日志
- javascript - 使函数返回它内部的承诺的结果
- google-cloud-platform - 在 BigQuery 中模拟窗口聚合的 UDF 的解决方法?
- r - 如何在堆叠图中使用 scale_color_discrete 格式化图例并在 y 轴 r 中包含千位分隔符