① 怎么使用github的js-xlsx库进行excel文件处理
JS-XLS
JS-XLS的安装是很简单的,在浏览器中使用该脚本文件,并使用脚本标记加载它:
<!-- https://github.com/SheetJS/js-xls/blob/master/xls.js -->
<script src="/path/to/xls.js"></script>
对于Node.js,只要通过NPM安装:
$ npm install xlsjs
$ node
> require('xlsjs').readFile('excel_file.xls');
然后,我们可以简单地使用他们提供的代码在他们的index.html文件解析和转换的xls文件JSON,CSV或公式为基础的输出。
function get_radio_value( radioName ) {
var radios = document.getElementsByName( radioName );
for( var i = 0; i < radios.length; i++ ) {
if( radios[i].checked ) {
return radios[i].value;
}
}
}
function to_json(workbook) {
var result = {};
workbook.SheetNames.forEach(function(sheetName) {
var roa = XLS.utils.sheet_to_row_object_array(workbook.Sheets[sheetName]);
if(roa.length > 0){
result[sheetName] = roa;
}
});
return result;
}
function to_csv(workbook) {
var result = [];
workbook.SheetNames.forEach(function(sheetName) {
var csv = XLS.utils.make_csv(workbook.Sheets[sheetName]);
if(csv.length > 0){
result.push("SHEET: " + sheetName);
result.push("");
result.push(csv);
}
});
return result.join("\n");
}
function to_formulae(workbook) {
var result = [];
workbook.SheetNames.forEach(function(sheetName) {
var formulae = XLS.utils.get_formulae(workbook.Sheets[sheetName]);
if(formulae.length > 0){
result.push("SHEET: " + sheetName);
result.push("");
result.push(formulae.join("\n"));
}
});
return result.join("\n");
}
var tarea = document.getElementById('b64data');
function b64it() {
var cfb = XLS.CFB.read(tarea.value, {type: 'base64'});
var wb = XLS.parse_xlscfb(cfb);
process_wb(wb);
}
function process_wb(wb) {
var output = "";
switch(get_radio_value("format")) {
case "json":
output = JSON.stringify(to_json(wb), 2, 2);
break;
case "form":
output = to_formulae(wb);
break;
default:
output = to_csv(wb);
}
if(out.innerText === undefined) out.textContent = output;
else out.innerText = output;
}
var drop = document.getElementById('drop');
function handleDrop(e) {
e.stopPropagation();
e.preventDefault();
var files = e.dataTransfer.files;
var i,f;
for (i = 0, f = files[i]; i != files.length; ++i) {
var reader = new FileReader();
var name = f.name;
reader.onload = function(e) {
var data = e.target.result;
var cfb = XLS.CFB.read(data, {type: 'binary'});
//var arr = String.fromCharCode.apply(null, new Uint8Array(data));
//var cfb = XLS.CFB.read(btoa(arr), {type: 'base64'});
var wb = XLS.parse_xlscfb(cfb);
process_wb(wb);
};
reader.readAsBinaryString(f);
//reader.readAsArrayBuffer(f);
}
}
function handleDragover(e) {
e.stopPropagation();
e.preventDefault();
e.dataTransfer.dropEffect = '';
}
if(drop.addEventListener) {
drop.addEventListener('dragenter', handleDragover, false);
drop.addEventListener('dragover', handleDragover, false);
drop.addEventListener('drop', handleDrop, false);
}
JS代码很容易理解,它使用了HTML5拖放API允许我们上传文件然后看他们为二进制字符串。二进制,然后直接传递到库,并进一步分析使用此代码:
var cfb = XLS.CFB.read(data, {type: 'binary'});
var wb = XLS.parse_xlscfb(cfb);
最终,WB(Workbook)对象是处理并转换成需要的格式(JSON,CSV和Excel公式)。这没有HTML5拖放文件阅读器的API,可用于Node.js代码相同。
注:此模块不支持xlsx。为了克服这一限制,我们可以通过同一作者称为JS-XLSX用另一个包。
② 使用nodejs处理Excel文件
node-xlsx: 基于Node.js解析excel文件数据及生成excel文件;
excel-parser: 基于Node.js解析excel文件数据,支持xls及xlsx格式文件;
excel-export : 基于Node.js将数据生成导出excel文件,生成文件格式为xlsx;
node-xlrd: 基于node.js从excel文件中提取数据,仅支持xls格式文件。
用一个处理Excel文件的项目来说明
首先新建文件夹xlsx,在此文件夹下安装依赖
新建input文件夹,并将需要修改的文件拷贝到此文件夹下
新建index.js文件
执行js脚本:
在output文件夹下查询修改后文件
③ js解析excel表格
https://www.cnblogs.com/liuxianan/p/js-excel.html
由 SheetJS 出品的js-xlsx是一款非常方便的只需要纯JS即可读取和导出excel的工具库,功能强大,支持格式众多,支持xls、xlsx、ods(一种OpenOffice专有表格文件格式)等十几种格式。本文全部都是以xlsx格式为例。
dist目录下有很多个JS文件,一般情况下用xlsx.core.min.js就够了,xlsx.full.min.js则是包含了所有功能模块。
javaScript读取和导出excel示例(基于js-xlsx)
http://demo.haoji.me/2017/02/08-js-xlsx/
④ javascript如何操作excel
javascript只是一个普通的脚本,是无法操作excel
的,如果要操毕毕作excel请用asp等网络编程软件,不过也得需要一知茄些组件才行!手猛芹
⑤ 怎么用js将excel中的数据读取后显示到网页中的表格
1、进入Internet属性。
2、点击安全。
3、选择自定义级别。
4、把ActiveX控件和插件下的所有选项都改成启用。
5、服务器生成html格式的Excel,然后设置
⑥ js怎么批量读取多个excel数据
可以使用吵念Node.js的Excel模块,如:xlsx、exceljs等,来读取多个excel数据。
示例代码:
const XLSX = require('xlsx');
// 读取excel文件
const workbook = XLSX.readFile('data.xlsx');
// 获取 Excel 中所有表名
const sheetNames = workbook.SheetNames;
// 根据表名获取迹卜对应某张表
const worksheet = workbook.Sheets[sheetNames[0]];姿碰穗
// 读取数据
const data = XLSX.utils.sheet_to_json(worksheet);
console.log(data);
⑦ Javascript中如何打开本地Excel文件,并且Excel编辑后,点击Excel中的保存仍然保存到原文件中
你是说使用ActiveX控件来操作EXCEL吧。如使用weboffice控件,嵌入到网页中,就可以在网页中打开、编辑、保存excel文件了。一般这样的控件都要钱的。NTKO OFFICE文档控件,这个有破解版的
⑧ 用javascript怎么实现把excel中的数据批量导入到数据库表中
利用jquery里的ocupload这个js组件,步骤和实现文件上传一样,将你要导入的excel表格进行上传到服务端,然后在工程里导入apache的poi这poi-ooxml以及poi-schemas这三个jar包,接受到文件对象后,利用里面的HSSWorkBook这个对象来解析excel里的每行数据,通过对应的数据类型对象添加到数据库里即可
1.将选中的数据快儿拷贝到一个TXT文本文件中(记得把后面的空格消掉。。否则导入数据库后会有对应的空行),假如存到“D:data.txt”这个位置里。
2.根据要导入的数据快儿建立MySql数据库和表,然后进入命令提示符里使用命令
load data local infile 'D:/data.txt' into table exceltomysql fields terminated by ' '
注意:盘符我使用的“/”才成功,否则提示找不到文件 下面文章中是用的“”!
进行导入操作
手动进行Excel数据和MySql数据转换
最快的方法是把EXCEL的数据以CSV的格式导出,到ACCESS导入CSV的那个文件,然后再用ACCESS导出DBF的格式,mySQL可以直接支持和读取DBF格式的数据库文件。
1、在EZDML中打开表,全选,复制,在EXCEL中新建表,粘贴。
2、在EZDML中导出数据,保存为EXCEL文件。
3、在EZDML中导出数据,保存为ACCESS文件,然后在ACCESS数据库中打开表,全选,复制,在EXCEL中新建表,粘贴。
4、在EZDML中导出数据,保存为TXT、XML等通用文件,然后在ACCESS中导入为数据表,再打开表,全选,复制,在EXCEL中新建表,粘贴。
我的空间中记载了一种方法,是我以前在工作时使用的,你可以借鉴下:
:hi../yueyun889/blog/item/fdd23d38a952b624b9998f5a.
你是说SQL server的吧。。。
把查出来的记录全部选中,右键选保存,保存为cvs的文件格式,再打开cvs的文件,重新保存成xls格式的就可。
1、启动SQL企业管理器,选中 表格:1、点击鼠标右键 2、所以任务 3、导入数据
2、选择数据源
3、选择文件路径
4、按txt文本格式,选择相应的分隔符和间距,就可以了。
基于Visual Basic编程语言,举例说明利用VB实现循环将本地Excel数据批量导入到远程的SQL Server数据库的方法。
1、打开文字文档以后,先做好表格,接着找到文档中工具栏的“工具”按钮。
2、点击之后,就会弹出一个命令菜单,在其中找到“邮件合并工具栏”,点击“邮件合并工具栏”以后就会出现如下图2的一个工具栏了。
3、在这个工具栏中找到如下图的图标,点击打开数据源。
4、接着就会出现一个选择框,选择好需要导入的数据源excel文件,点击确定。
5、接着鼠标如下图点击要导入数据文档表格中的单元格,让光标在这个单元格总闪动,然后点击第二幅图上的图标“插入合并域”。
6、接着选择要输入的项目,点击确定,就能看到第二幅图中单元格里出现了《姓名》,出生日期和性别也可以用同样的方法输入。
7、然后点击如下图”合并到新文档“,在合并到新文档设置中选择要导入的数据起始行和结束行,点击确定。
8
8、接着你就会发现excel中的数据全部导入到了文档的表格里。
⑨ Excel中加入Javascript
在excel中引用javascript ,VBA和javascript混合工作。
【例子】 Sub yy02()
Dim js As New ScriptControl
js.Language = "javascript"
js.Eval "function arr(aa){return aa.value.toArray()}" 'toArray一定不能写成toarray
Set y = js.Run("arr", [a1:d1])
MsgBox y
End Sub
将上面的代码,专拷贝到VBA编辑器中属,可以运行 现在在excel中,越来越多的使用XML\JAVAECRIPT\VBSCRIPT。
比如仅仅用VBA实现多层继承和多根继承很难,但是加上javascript就不难了
VBA中数组应用占了很大的比重,如果加进去javascript就更加灵活了
处理树形结构的数据,用MSDOM\XML就方便多了