我想将excel .xlsx文件中的数据转换为键控JSON结构。
这是我的.xlsx文件中的数据示例:
我希望它能像这样出现:
{
"Tom": {
"Gender": "M",
"Mobile": 6154234123
},
"Harry": {
"Gender": "M",
"Mobile": 6243622345
},
"Jane": {
"Gender": "F",
"Mobile": 6134513245
},
"Mary": {
"Gender": "F",
"Mobile": 6928341234
}
}
我正在做一个Web应用程序,用户浏览他们的excel文件,它将输出上面的键控json。 我尝试过使用SheetJS,但它只是作为非键控JSON结构出现的。
function handleFile(e) {
var files = e.target.files;
var i,f;
for (i = 0, f = files[i]; i != files.length; ++i) {
var reader = new FileReader();
var name = f.name;
reader.onload = function(e) {
var data = e.target.result;
var workbook = XLSX.read(data, {type: 'binary'});
/* DO SOMETHING WITH workbook HERE */
var first_sheet_name = workbook.SheetNames[0];
/* Get worksheet */
var worksheet = workbook.Sheets[first_sheet_name];
console.log(JSON.stringify(XLSX.utils.sheet_to_json(worksheet, {range:"A1:C5"})));
};
reader.readAsBinaryString(f);
}
}
input_dom_element.addEventListener('change', handleFile, false);