Nodejs чтение файла .xlsx дает странные символы - PullRequest
0 голосов
/ 03 августа 2020

Я пытаюсь прочитать файл * .xlsx, преобразовать его в json и записать в другой файл. Дело в том, что когда я пытаюсь прочитать файл * .xlsx, используя метод fs.readFileSync, в результате получаются странные символы. Кто-нибудь когда-нибудь сталкивался с этим? как его решить?

enter image description here

Code is something like this:

const inputFilePath = path.join(__dirname, 'csv/123.xlsx')

const fileContent = fs.readFileSync(inputFilePath, 'utf-8')

console.log(fileContent)

запуск с nodemon index.js

1 Ответ

0 голосов
/ 03 августа 2020

ReadFileSync всегда будет возвращать эти символы, потому что это не файл text, который вы читаете, если вы хотите преобразовать файлы Excel в JSON, вам нужно использовать стороннюю библиотеку, например xlsx .

const xlsx= require('xlsx');

const inputFilePath = path.join(__dirname, 'csv/123.xlsx');
let File = xlsx.readFile(inputFilePath);
let Content = xlsx.utils.sheet_to_json(File.Sheets[File.SheetNames[0]]);

Будет проанализировано first sheet of your excel.

...