繁体   English   中英

从流中获取数据以备后用

[英]Getting data from stream for later use

我正在尝试从流中获取数据。

const csv = require('csv-parser')
const fs = require('fs')
const results = [];

fs.createReadStream('data.csv')
  .pipe(csv())
  .on('data', (data) => results.push(data))
  .on('end', () => {
        console.log(results)
  });

console.log(results);

结果是第一个空 [],然后是 csv 的数据。

[]
[ { '0': '10-01-2020 14:37:20',
    '1': '10-01-2020 18:17:42',
    '2': '13222',
    '3': '00',
    '4': '3.67',
    '5': '36.73',
    '6': '',
    '7': 'Default' },
  { '0': '10-01-2020 09:02:00',
    '1': '10-01-2020 14:02:20',
    '2': '18020',
    '3': '00',
    '4': '5.01',
    '5': '50.06',
    '6': '',
    '7': 'Default' } ]

我想稍后在程序中修改result中的数据。

我想我缺少一些基本的东西。

代码没有任何问题。 您有两次控制台语句。 最后一个是打印空数组。

createReadStream是一个异步操作,因此end侦听器上的控制台随后被触发。

如果删除最后一个控制台语句,它将按预期显示结果。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM