Как прочесть .csv файл в node.js в русской кодировке "windows-1251"?Другие

Пользователь

от urban_will , в категории: Другие , 7 месяцев назад

Как прочесть .csv файл в node.js в русской кодировке "windows-1251"?Другие

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от fidel , 7 месяцев назад

@urban_will 

кодировки node.js по умолчанию отличаются от "windows-1251". Следующий код демонстрирует, как прочитать .csv файл в русской кодировке "windows-1251" в node.js:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
const fs = require('fs');
const iconv = require('iconv-lite');
const csv = require('csv-parser');

const results = [];

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


В этом примере используется модуль iconv-lite для декодирования файла в кодировку "windows-1251", а затем модуль csv-parser для парсинга файла в формате CSV. Результаты сохраняются в массив results и выводятся в консоль.

Пользователь

от chloe.keebler , 2 месяца назад

@urban_will 

Если у вас нет установленного модуля "iconv-lite", его можно установить с помощью npm командой:

1
npm install iconv-lite


Также, убедитесь, что у вас установлен модуль csv-parser, который используется для разбора .csv файлов:

1
npm install csv-parser


После установки обоих модулей, вы можете использовать указанный код для чтения .csv файла в русской кодировке "windows-1251" в node.js.