Как удалить пустые строки с конца файла с помощью node.js fs?

В Node.js, используя fs.createReadStream() для потоковой передачи файла .csv в PapaParse (парсер для преобразования csv в json), я хотел бы получить следующее:

ВХОД


ВЫВОД (пустые строки сохраняются)


Я пытался прочитать документацию fs.createReadStream() и PapaParse, но не смог найти способ сделать это.

Я использую Excel для создания файлов .csv. В этом случае всегда присутствует сохранение файла в формате .csv с кодировкой последней пустой строки в кодировке utf8.

Вот как я транслирую файл

      csvStream.on('data', async chunk => {
  /** conversão csv -> json */
  streamToJSON(String(chunk), ({ data: parsed }) => console.log(parsed));
}

Ввод CSV

      A;B;C
;;
1;2;3
;;
1;2;3

Вывод журнала (в конце генерируется пустая строка только с одним свойством)

      { 'A': '', B: '', C: '' },
{ 'A': '1', B: '2', C: '3' },
{ 'A': '', B: '', C: '' },
{ 'A': '1', B: '2', C: '3' },
{ 'A': '' }

Ожидаемый результат

      { 'A': '', B: '', C: '' },
{ 'A': '1', B: '2', C: '3' },
{ 'A': '', B: '', C: '' },
{ 'A': '1', B: '2', C: '3' },

Я хотел бы в лучшем случае избавиться от этого последнего объекта в потоковом процессе или во время синтаксического анализа, не хотел иметь дело с ним позже в коде.

0 ответов

Другие вопросы по тегам