原生js获取execl里面的值 主要使用ActiveXObject

今天一个程序员给了一个excel表,里面有一百多条数据,叫我一个一个数据的复制到系相应的函数里面比如 put("gaga1","gaga2"),这样一句话,要我复制一百多遍,fuck。。。我就说你自己用java读取不就可以啦!他就说用java要运行半个小时以上,我就心里想fuck,是你不怎么懂java吧!此时自己心中的几百万头*在奔腾!!!!!!

于是自己就去找了一个js方法来读取excel里面的数据,加以修改都不用半个小时!真是fuck!

execl里面的数据大概是这样的:

原生js获取execl里面的值 主要使用ActiveXObject

实现输出的效果是:

原生js获取execl里面的值 主要使用ActiveXObject

js源码:

function readThis(){
var tempStr = "";
var filePath= document.all.upfile.value;
var oXL = new ActiveXObject("Excel.application");
var oWB = oXL.Workbooks.open(filePath);
oWB.worksheets(1).select();
var len = 100; // 要取到的多少条数据
var oSheet = oWB.ActiveSheet;
try{
for(var i=1;i<= len;i++){
tempStr+=("put(\""+oSheet.Cells(i,1).value+"\",\""+oSheet.Cells(i,2).value+"\");")+"<br>"; // 1和2分别代表第一列和第二列
}
}catch(e){
document.all.txtArea.innerHTML = tempStr;
}
document.all.txtArea.innerHTML = tempStr;
oXL.Quit();
CollectGarbage();
}

html源码:

<input type="file" id="upfile" /><input type="button" onclick="readThis();" value="读取">
<div id="txtArea" style="width:500px;height:500px;"></div>

因为 ActiveXObject 只有IE支持 所以运行的时候只能使用IE来运行,目前想到就此方法了!

上一篇:for和foreach的区别


下一篇:qml动画控制器AnimationController