如何将包含json格式数据的excel列转换为javascript对象?

如何将包含json格式数据的excel列转换为javascript对象?,javascript,json,excel,parsing,csvtojson,Javascript,Json,Excel,Parsing,Csvtojson,我有一个excel表格,其中有一列json格式的数据。我想将此工作表转换为json。其他两列被转换为json,但这个特定的列不能被视为json对象,而是转换为字符串。JSON.parse()无法处理此字符串,并引发语法错误。以下是我尝试过的东西: 使用xlsx包将excel工作表转换为json 使用csvtojson包将excel转换为csv到json 两者都没有帮助我成功地将最后一列转换为json对象 下面是我的代码: let xlsx = require("xlsx"

我有一个excel表格,其中有一列json格式的数据。我想将此工作表转换为json。其他两列被转换为json,但这个特定的列不能被视为json对象,而是转换为字符串。JSON.parse()无法处理此字符串,并引发语法错误。以下是我尝试过的东西:

  • 使用xlsx包将excel工作表转换为json
  • 使用csvtojson包将excel转换为csv到json
两者都没有帮助我成功地将最后一列转换为json对象 下面是我的代码:

let xlsx = require("xlsx")
const csvtojson = require("csvtojson")
let path = require("path")
let fs = require("fs");

const inputFilePath = path.join(__dirname, './mastersheet.xlsx');
let File = xlsx.readFile(inputFilePath);
let content = xlsx.utils.sheet_to_csv(File.Sheets['Sheet6']);

fs.writeFile('./mastersheet.csv', content, (err) => {
    if (err) console.log(err)
})

csvtojson()
    .fromFile('./mastersheet.csv')
    .then((jsonObj) => {
         console.log(jsonObj);
         fs.writeFileSync("mastersheet.json", JSON.stringify(validJsonData), 'utf8', (err) => {
             if (err) console.log(err);
         })
    });
非常感谢您的帮助。

您可以使用excel并将其转换为json,如下所示:

const excelToJson = require('convert-excel-to-json');
const fs = require('fs');

const result = excelToJson({
    source: fs.readFileSync('exlTest.xlsx'),
    header:{
        rows: 1
    }
});
console.log('result :', result);

将其转换为json不是问题所在。转换已经是json格式的excel数据会导致问题,因为它无法在javascript中解析为json