node模塊之xlsx使用

最近同事在用java讀取xlsx文件遇到困難,說是什么表格他復(fù)雜之類的,java呢,我不懂,那么就想用我偉大的nodejs,結(jié)果還真有那么厲害的。好了,我就不嫌棄java了,這里當做小筆記,絕非復(fù)制粘貼。

npm i xlsx -S

讀取數(shù)據(jù)

let xlsx = require('xlsx');

let workbook = xlsx.readFile('susu.xlsx'); //workbook就是xls文檔對象

let sheetNames = workbook.SheetNames; //獲取表明

let sheet = workbook.Sheets[sheetNames[0]]; //通過表明得到表對象

var data =xlsx.utils.sheet_to_json(sheet); //通過工具將表對象的數(shù)據(jù)讀出來并轉(zhuǎn)成json

寫數(shù)據(jù)

let xlsx = require('xlsx');
let json = [ 
    {"大標題":null},
    {null:"大標題"},
    {null:"大標題"},
    {null:"大標題"},
    { Name: 'name_01', Age: 21, Address: 'address_01' },
    { Name: 'name_02', Age: 22, Address: 'address_02' },
    { Name: 'name_03', Age: 23, Address: 'address_03' },
    { Name: 'name_04', Age: 24, Address: 'address_04' },
    { Name: 'name_05', Age: 25, Address: 'address_05' }, ];

let ss = xlsx.utils.json_to_sheet(json); //通過工具將json轉(zhuǎn)表對象
let keys = Object.keys(ss).sort(); //排序 [需要注意,必須從A1開始]

let ref = keys[1]+':'+keys[keys.length - 1]; //這個是定義一個字符串 也就是表的范圍[A1:C5] 

let workbook = { //定義操作文檔
    SheetNames:['nodejs-sheetname'], //定義表明
    Sheets:{
        'nodejs-sheetname':Object.assign({},ss,{'!ref':ref}) //表對象[注意表明]
    },
}

xlsx.writeFile(workbook,"./suzhenwei.xls"); //將數(shù)據(jù)寫入文件
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容