Nodejs 读取 .xlsx 文件给出奇怪的符号

Nodejs reading .xlsx file gives weird symbols

我正在尝试读取 *.xlsx 文件,将其转换为 json 并写入另一个文件。 问题是,当我尝试使用 fs.readFileSync 方法读取 *.xlsx 文件时,我得到了奇怪的符号。有人遇到过吗?如何解决?

代码是这样的:

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

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

console.log(fileContent)

运行 它与 nodemon index.js

ReadFileSync 将始终 return 这些字符,因为它不是您正在阅读的 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