如何使用 Node.js 按需解析记录
How can I parse records on demand with Node.js?
是否有一个节点模块可以从CSV文件中解析特定数量的记录?用例是解析大型日志文件并根据请求将记录传送到分页客户端。
node-csv 还不能做到这一点,我发现最接近的是一行一行地读取,这需要重新发明 CSV 解析轮,并且会在多行记录上中断。
但是,让我们降低标准:如何使用 Node.js 逐个解析单行 CSV 记录?在大多数其他语言中,这是非常微不足道的任务。
据我了解,您只想将逗号分隔的值行解析为数组?如果是这样,请尝试以下方法:
https://npmjs.org/package/csvrow
解析单个"行"(也可以有嵌入的换行符):
var csv = require('csv'); // node-csv
csv()
.from.string(SINGLE_LINE_OF_CSV)
.to.array(function(record) {
console.log('R', record);
});
我不确定您所说的"CSV 文件中特定数量的记录"是什么意思,或者问题到底是什么。一旦你读完了你需要的金额,只需将响应发送回客户,你就完成了。
编辑:如果要实现分页,也可以使用node-csv
:
var csv = require('csv');
var skip = 100;
var limit = 10;
csv()
.from.path('file.csv')
.on('record', function(row, index) {
if (index >= skip && index < (skip + limit))
console.log('R', index);
});
相关文章:
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- 如何使用提交按钮搜索表中的记录
- 使用Rails 3中的AJAX删除记录
- 如何使用 Backbone 将多条记录呈现到 html 表中.js .
- 使用Ajax的后退按钮历史记录,URL中没有散列
- 如何记录其他网站的值并将其放入数据库中使用
- 使用Javascript将多条记录插入SQLite数据库时出错
- Meteor使用表格值插入记录
- 如何在javascript中记录对象时强制使用toString
- 如何使用node.js将web和错误事件记录到Splunk
- 如何记录用户'使用Javascript/PHP的语音
- 使用jquery和ajax删除记录
- 使用记录保存的消息进行表单验证
- 使用jQuery/Ajax从数据库中检索记录
- 使用jquery获取单个记录
- 如何在不使用插件的情况下用程序记录浏览器操作
- 在ember.js记录上使用toJSON,将其中一个属性设置为null
- 哪些库可以在运行时记录javascript使用情况
- 历史记录未使用 chrome.history.deleteRange 完全删除
- 创建新记录并使用成员数据提交事务