最近有一个要求,我的一个项目中解析Excel文件(与xls/xlsx扩展)在浏览器(使用JavaScript当然)。所以我在网上看了一下,发现了这2个有用的库:
让我们看看他们是如何工作的。
兼容性
支持读取文件格式
- Excel 2007+ XML Formats (XLSX/XLSM)
- Excel 2007+ Binary Format (XLSB)
- Excel 2003-2004 XML Format (XML “SpreadsheetML”)
- Excel 97-2004 (XLS BIFF8)
- Excel 5.0/95 (XLS BIFF5)
- OpenDocument Spreadsheet (ODS)
支持写文件格式
- XLSX
- CSV (and general DSV)
- JSON and JS objects (various styles)
Demo: http://oss.sheetjs.com/js-xlsx
Source: http://git.io/xlsx
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(func