AS3读取Excel文件,支持xls\xlsx格式
建立AS3项目 导入ExcelLib.swc 以及as3xls-1.0.1.swc
简单代码
var xls:ExcelFile = new ExcelFile( ); xls.loadFromByteArray( mFile.data ); var sheet:Sheet = xls.sheets.source[ 0 ]; trace( sheet.values.source );
以上代码可以解析出当前选中xls格式的excel文件的第一张表里面的数据,数据以二维数组的形式存储 但是对于.xlsx格式的excel文件却无能无力
还好国外有大神已经解决,(获取源码 )原理通过将excel解压成zip 然后从zip中获取到对应的xml格式数据,最后通过解析xml获取.xlsx格式里面的数据。
笔者在此源码的基础上 进一步进行了简单的封装,形成xlsxlib.swc;
加载路径
var xlsx:XlsxFile = new XlsxFile( ); xlsx.load( null,"quick_talk.xlsx" ); xlsx.addEventListener(Event.COMPLETE,onLoaded ); protected function onLoaded(event:Event):void { var xlsx:XlsxFile = event.target as XlsxFile; trace( xlsx.sheets[0].values ); }
加载字节
var xlsx:XlsxFile = new XlsxFile( ); xlsx.load( mFile.data ); trace( xlsx.sheets[0].values );