成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

nodejs分析excel文件將結(jié)果寫(xiě)入excel文件

Alan / 3265人閱讀

摘要:之后需要對(duì)中的結(jié)果數(shù)據(jù)做分析,并且制作圖表寫(xiě)周報(bào)發(fā)給老大。輪到我值班的時(shí)候就用寫(xiě)了一個(gè)腳本自動(dòng)處理中的數(shù)據(jù),并且將數(shù)據(jù)再寫(xiě)入文件。腳本目的讀取文件,分析中的數(shù)據(jù),并且將結(jié)果寫(xiě)入中。

背景

因?yàn)?Team 本身工作性質(zhì)的問(wèn)題,平時(shí)需要值班。值班數(shù)據(jù)可以導(dǎo)出為本地的Excel文件。之后需要對(duì)Excel中的結(jié)果數(shù)據(jù)做分析,并且制作圖表寫(xiě)周報(bào)發(fā)給老大。

對(duì)于我這種對(duì)word都玩不轉(zhuǎn)的人,別說(shuō)用Excel中強(qiáng)大的公式分析數(shù)據(jù)了?。輪到我值班的時(shí)候就用nodejs寫(xiě)了一個(gè)腳本自動(dòng)處理Excel中的數(shù)據(jù),并且將數(shù)據(jù)再寫(xiě)入Excel文件。后來(lái)分享給同事,得到了老大的夸獎(jiǎng),自信心爆棚 ?

之前僅僅為了滿足工作的需要寫(xiě)的比較的隨便,剛好國(guó)慶有時(shí)間按照CMD規(guī)范重寫(xiě)一下。然后分享給大家。

腳本目的

讀取Excel文件,分析Excel中的數(shù)據(jù),并且將結(jié)果寫(xiě)入Excel中。

使用的第三方包

在這個(gè)過(guò)程中使用了兩個(gè)第三方的包分別如下:

require("date-utils");
var xlsx = require("node-xlsx");

使用date-utils主要是用來(lái)做一些時(shí)間上的處理。比如說(shuō)時(shí)間差,當(dāng)前時(shí)間向后加七天的日期。這個(gè)包非常的強(qiáng)大??梢钥聪翧PI:

具體的API詳細(xì)文檔可以參考這里:點(diǎn)擊這里

上面的兩片文檔可以結(jié)合著看。

這些方法擴(kuò)展的是Date對(duì)象,而后面的這些方法這些用于對(duì)象的實(shí)例。實(shí)例代碼如下:

//當(dāng)前日期推后7天的日期
var time = "2016-10-04 14:30:24"
var nextSevenDay = (new Date(time)).add({"day":7});

//比較時(shí)間差
var temp = Date.compare(time1,time2);   //結(jié)果位數(shù)值

node-xlsx主要做一些excel相關(guān)的處理

比如說(shuō)讀取Excel 文件:

var workExcel = xlsx.parse("xxx.xls");

比如創(chuàng)建excel文件對(duì)象:

var buffer = xlsx.build([{name: name, data: datalist}]);
cmd規(guī)范相關(guān)內(nèi)容

如果對(duì)CMD規(guī)范不熟悉的話可以參考這里

我的腳本的目錄結(jié)構(gòu)如下:

如果對(duì)package.json文件配置不是很熟悉的話可以參考這里

主要代碼解析:

通過(guò)node-xlsx 讀取的excel文件就是一個(gè)json數(shù)據(jù)。我們應(yīng)該都知道一個(gè)Excel文件可以包含多張表,每張表都可以管理自己的數(shù)據(jù)。

看照上面已知內(nèi)容,代碼如下:

//讀取某個(gè)excel文件
var chatExcel = xlsx.parse("./歷史記錄.xls");

//獲取需要excel某個(gè)表中的數(shù)據(jù)
var tableData = excelFunc.getDataContent("歷史記錄", chatExcel);

//獲取當(dāng)前表中獲取第一行數(shù)據(jù),通常在excel中這一行就是每一列的title
var tableTitle = tableData[0];

在使用nodejs的過(guò)程中可能最大的一個(gè)迷惑就是區(qū)別exportsmodule.exports吧,它們兩者的主要區(qū)別如下:

1. 簡(jiǎn)單的代碼示例:

一個(gè)test1.js文件,其中代碼如下:

module.exports="test";

exports.fileName = function(){
    console.log("test1");
};

在test2.js文件中使用test1.js模塊的方法:

var test1 = require("test1");

test1.fileName();    //TypeError: Object test! has no method "fileName"

2. 如果模塊是一個(gè)類(lèi)如有一個(gè)consoleName.js的文件,其中代碼如下:

module.exports=function(name){
    this.name =name;
    this.consoleName = function(){
        console.log(this.name);
    }
}

其它模塊中的調(diào)用模塊的方法:

var ConsoleName = require("consoleName");
var con = new ConsoleName("zhiqiang");
con.consoleName();  //zhiqiang

3. 如果模塊是一個(gè)數(shù)組,例如有一個(gè)test1.js的文件,其中的代碼如下:

module.exports =["zhiqiang1","houzhiqiang"];

在其它模塊的調(diào)用方法

var arr =require("test1")
console.log(arr[1])   //houzhiqiang

其它的代碼就沒(méi)有什么別的了,都是關(guān)于公式的存計(jì)算的問(wèn)題。如果有興趣的同學(xué)可以訪問(wèn)源碼看一下。源碼地址

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/80601.html

相關(guān)文章

  • 從零開(kāi)始使用node讀取txt處理后導(dǎo)出excel

    摘要:安裝執(zhí)行版本號(hào),例如以下語(yǔ)句可以安裝幾的版本好像在墻內(nèi)只能找到以前的版本使用可以查看現(xiàn)有的版本,可以支持模糊切換。 一直說(shuō)要好好學(xué)習(xí),總結(jié)知識(shí)什么的。一直覺(jué)得沒(méi)有時(shí)間。周一終于提交了論文盲審。決定從今天每周都總結(jié)一次自己的所學(xué)。希望自己能堅(jiān)持。 任務(wù)描述: 一個(gè)醫(yī)學(xué)系的同學(xué)要分析一個(gè)叫TCGA的數(shù)據(jù)庫(kù),每個(gè)實(shí)驗(yàn)文件是txt,格式如下: hsa-miR-1228* 5.185500...

    frank_fun 評(píng)論0 收藏0
  • nodejs使用node-xlsx生成excel

    摘要:使用中庫(kù)進(jìn)行的生成操作近日,應(yīng)領(lǐng)導(dǎo)要求,從網(wǎng)上抓了一大批數(shù)據(jù)存入了數(shù)據(jù)庫(kù),可是媽媽批,市場(chǎng)妹子要的是表格啊,畢竟妹子的話還是要聽(tīng)的關(guān)鍵人家語(yǔ)氣蠻好的,就從網(wǎng)上查一些資料。 ## 使用nodejs中node-xlsx庫(kù)進(jìn)行excel的生成操作 ## 近日,應(yīng)領(lǐng)導(dǎo)要求,從網(wǎng)上抓了一大批數(shù)據(jù)存入了數(shù)據(jù)庫(kù),可是媽媽批 ,市場(chǎng)妹子要的是excel表格啊,畢竟妹子的話還是要聽(tīng)的(關(guān)鍵人家語(yǔ)氣蠻好的...

    zr_hebo 評(píng)論0 收藏0
  • java 導(dǎo)出 excel 最佳實(shí)踐,java 大文件 excel 避免OOM(內(nèi)存溢出) exce

    摘要:消費(fèi)之后,多線程處理文件導(dǎo)出,生成文件后上傳到等文件服務(wù)器。前端直接查詢并且展現(xiàn)對(duì)應(yīng)的任務(wù)執(zhí)行列表,去等文件服務(wù)器下載文件即可。這客戶體驗(yàn)不友好,而且網(wǎng)絡(luò)傳輸,系統(tǒng)占用多種問(wèn)題。拓展閱讀導(dǎo)出最佳實(shí)踐框架 產(chǎn)品需求 產(chǎn)品經(jīng)理需要導(dǎo)出一個(gè)頁(yè)面的所有的信息到 EXCEL 文件。 需求分析 對(duì)于 excel 導(dǎo)出,是一個(gè)很常見(jiàn)的需求。 最常見(jiàn)的解決方案就是使用 poi 直接同步導(dǎo)出一個(gè) exc...

    K_B_Z 評(píng)論0 收藏0
  • 用 python 做數(shù)據(jù)分析:pandas 的 excel 應(yīng)用初探

    摘要:今天要分享的是,用來(lái)寫(xiě)。數(shù)據(jù)處理環(huán)節(jié)效率低下,易受干擾。問(wèn)題排查難以溯源。一旦數(shù)據(jù)報(bào)告有誤,想要定位問(wèn)題所在,常常需要從頭開(kāi)始復(fù)盤(pán)。結(jié)果和上面結(jié)果結(jié)構(gòu)是一致的。這是官網(wǎng)的文檔,但是卻不完全適用目前的場(chǎng)景。 大毛 豈安科技業(yè)務(wù)風(fēng)險(xiǎn)分析師 多年訂單業(yè)務(wù)反欺詐經(jīng)驗(yàn),負(fù)責(zé)豈安科技多款產(chǎn)品運(yùn)營(yíng)工作。 上回筆者分享過(guò)一些 pandas 的常用數(shù)據(jù)查詢語(yǔ)法,但是數(shù)據(jù)查詢對(duì)于 pandas 而言只是冰...

    aervon 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<