javascript - How to parse from 8th row instead of first row in JavaScript?
问题描述
I am trying to parse xls file in react + JavaScript. I am trying to parse xls from line no 8 not from 0, to get expected result like this
[{
Emp. No:”116”,
Amp. Name:”vikas kumar”,
Card No:”39001”,
“Att Date”:”01-Aug-2019”
},
{
Emp. No:”116”,
Amp. Name:”vikas kumar”,
Card No:”39001”,
“Att Date”:”02-Aug-2019”
},
{
Emp. No:”116”,
Amp. Name:”vikas kumar”,
Card No:”39001”,
“Att Date”:”03-Aug-2019”
}
]
Here is my code
https://stackblitz.com/edit/react-e9zsto
Here is my xls file
https://filebin.net/jm37356p8nkzgycm
xslToJson = workbook => {
var data = [];
var sheet_name_list = workbook.SheetNames;
sheet_name_list.forEach(function(y) {
var worksheet = workbook.Sheets[y];
var headers = {};
for (var z in worksheet) {
console.log(z);
console.log('zzz');
// || z==='B2' || z==='B4' || z==='E4' ||z==='B6' ||z==='E6'||z==='B8'||z==='C8'||z==='F8' || z==='G8'
if (z[0] === "!" ) continue;
//parse out the column, row, and value
console.log('rowww',z);
var tt = 0;
for (var i = 0; i < z.length; i++) {
console.log(z[i])
console.log('z[i]')
if (!isNaN(z[i])) {
tt = i;
console.log('ttttttt',tt)
console.log('zzzzz',z)
break;
}
}
var col = z.substring(0, tt);
var row = parseInt(z.substring(tt));
var value = worksheet[z].v;
console.log(value)
console.log("value")
//store header names
if (row == 1 && value) {
headers[col] = value;
continue;
}
console.log(headers)
console.log("headers")
if (!data[row]) data[row] = {};
data[row][headers[col]] = value;
}
console.log(data)
//drop those first two rows which are empty
data.shift();
data.shift();
});
return data;
};
currently code works when header is in 0 position any update ?
解决方案
推荐阅读
- linux - Exiv2 与 makefile
- python - 在熊猫中使用路径字符串作为索引
- flutter - 如何在颤动中截取当前屏幕的屏幕截图?
- java - CircleCI android在UnitTest步骤运行失败
- python-3.x - 如何检测照片是原始照片还是从显示器拍摄的(Python)
- r - R中类似变量的相关性
- entity-framework - LINQ 语句相当于 SQL 中的 sum 查询
- javascript - 如何在nodejs的中间件中使用mongodb查询保存数据
- angular - Angular 在路由到其他组件时将表单字段内容保留在组件中
- c# - 如何将 Click 事件添加到 WPF NotifyIcon 中的上下文菜单按钮?