官网:https://github.com/SheetJS/sheetjs#the-zen-of-sheetjs官网:
读取excel
XLSX.read(data,{
type: "binary" // 申明data 格式
})
/* 示例 以file类型读取 */
const reader = new FileReader();
reader.readAsBinaryString(file);
reader.onload = function(){
const excelFile = XLSX.read(this.result, {
type: 'binary' //以二进制读取
});
}
/* 得到的是文件流,而非file类型时 */
/* 转为file 类型 */
let fileName = "试验站环境数据.xlsx"
let file = new File([data], fileName);
解析表格方法
1.XLSX.utils.sheet_to_json(excelFile.Sheets['Sheet1']) 解析为json格式
2.XLSX.utils.sheet_to_html(excelFile.Sheets['Sheet1']) 解析为html格式
3.
encode_row / decode_row
转化行号
encode_col / decode_col
转化列号
encode_cell / decode_cell
转化单元格号
encode_range / decode_range
转化表格范围注意:excel中 列以 A开始,行以1开始。在
XLSX
中转化为数值后行与列都是0开始
//分解为json数据
let data = XLSX.utils.sheet_to_json(excelFile.Sheets['Sheet1']);
console.log("====jsonData====",data);
//以html展示
let html = XLSX.utils.sheet_to_html(excelFile.Sheets['Sheet1']);
document.getElementById("newTable").innerHTML = html;
_this.isHasHtml = true;
console.log("====htmlData====",html);
const range = XLSX.utils.decode_range(sheet['!ref']) //解析范围
console.log(range)
XLSX.utils.encode_col(c) //将具体列数值 转为 列名 【A、B、C...】
参考:https://blog.csdn.net/mochenangel/article/details/114650985