ceshi.xls数据格式如下所示:
flex实现如下:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import com.as3xls.xls.ExcelFile; import com.as3xls.xls.Sheet; import mx.collections.ArrayCollection; import mx.controls.Alert; private var xls : ExcelFile; private var sheet : Sheet; [Bindable] public var arr:ArrayCollection = new ArrayCollection(); [Bindable] private var stateText : String = "请选择要导入的Execl表."; private var file : FileReference = new FileReference(); protected override function createChildren():void { super.createChildren(); file.addEventListener(Event.SELECT,file_select); //是否上传完成 file.addEventListener(Event.COMPLETE,file_complete); //上传的进度 file.addEventListener(ProgressEvent.PROGRESS,file_progerss); } //选择上传的Execl private function file_select(e:Event):void { stateText = file.name; } //上传状态 private function file_complete(e:Event):void { var byteArray:ByteArray = new ByteArray(); byteArray = file.data; byteArray.position = 0; xls = new ExcelFile(); xls.loadFromByteArray(byteArray); sheet = xls.sheets[0]; var i:int; var len : int = sheet.values.length; for(i = 2; i < len - 1; i++) { arr.addItem({xm:sheet.values[i][0],nl:sheet.values[i][1],xl:sheet.values[i][2],lxdh:sheet.values[i][3],lxdz:sheet.values[i][4]}); } Alert.okLabel = "确定"; Alert.show("共导入:"+(sheet.values.length - 3)+"条数据!","恭喜",Alert.OK); } //进度 private function file_progerss(e:ProgressEvent):void { progressBar.label = "已上传 " + Math.round(100 * e.bytesLoaded / e.bytesTotal) + "%"; progressBar.setProgress(Math.round(100 * e.bytesLoaded / e.bytesTotal),100); } //上传 private function upload():void { if(file.size > 0) { file.load(); } } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <s:Panel x="23" y="34" width="334" height="177" title="读取Execl" dropShadowVisible="false"> <s:TextInput x="25" y="27" width="196" text="{stateText}"/> <s:Button x="239" y="27" label="浏览..." click="file.browse();"/> <mx:ProgressBar x="25" y="78" height="26" width="195" id="progressBar"/> <s:Button x="239" y="72" label="上传" click="upload();"/> </s:Panel> <mx:DataGrid x="365" y="57" width="404" height="154" dataProvider="{arr}"> <mx:columns> <mx:DataGridColumn headerText="姓名" dataField="xm"/> <mx:DataGridColumn headerText="年龄" dataField="nl"/> <mx:DataGridColumn headerText="学历" dataField="xl"/> <mx:DataGridColumn headerText="联系电话" dataField="lxdh"/> <mx:DataGridColumn headerText="联系地址" dataField="lxdz"/> </mx:columns> </mx:DataGrid> <s:Label x="365" y="37" text="显示导入的Execl数据" width="160" height="22"/> </s:Application>
实现效果如下:
相关推荐
支持Flex中将datagrid中的数据存储为xsl,并且1.0.1版本比1.0更好的支持中文
as3xls-1.0.1,excel,flex, 能够正常操作EXCEL文件
操作excel和word的包,多做工具用。如果excel的行列中有中文,操作中文的问题,请您百度。
在Flex应用中嵌入HTML代码或者网页,可以使用Iframe实现
Flex中利用as3xlsUTF8.swc库文件导出Excel文件,支持中文
as3xls-1.0.1.swc包文件直接拷贝到libs目录即可使用,相关代码也附上。
汇总插件-swc 使用编译包的插件。 安装 npm i -D rollup-plugin-swc 用法 // rollup.config.js import swc from 'rollup-plugin-swc' export default { input : 'index.ts' , output : { dir : 'dist' , ...
flex4.5利用as3corelib.swc解析json实例, 内含as3corelib.swc
flex/as3写的一个操作excel案例,里面包括了as3xlsUTF.swc,可以操作中文字符。
尝试写一个flex下载excel文件的air工程,引用此as3xls.swc文件
:rocket: 创建React应用程序swc :rocket: 在使用以加快编译、开发和测试。特征javascript / 打字稿支持开发时用swc替换babel-loader 用 swc 替换 babel-loader 以加快构建时间运行 jest 测试时用 swc 替换 babel入门...
flex解析json的swc包(entity-flex-v1-02)及例子
snowpack-plugin-swc 配置.swcrc文件 npm install --save-dev snowpack-plugin-swc // snowpack.config.json{ "plugins" : [ [ "snowpack-plugin-swc" , { "input" : [ '.js' , '.mjs' , '.jsx' , '.ts' , '.tsx' ] ...
agslib-3.7-2014-11-06.swc,来自官网
hessian与flex交互,所以用到的swc包
as3xls 只支持excel2003版本以下的,不支持扩展名为.xlsx的excel,而类库Rxlsx支持.xlsx的excel,用法很简单,只需加载完成excel文件后执行: var excel:Excel = new Excel(fr.data); //fr.data为flex加载excel的...
使用as3xls-1.0.1.SWC包做的Flex界面DateGrid数据导出Excel表格。
Flex游戏开发框架 请在Libs加入: AsWing.swc PureMVC_AS3_2_0_4.swc
本人自己用flex 创建as3例子,引用swc
这是flex3引用的swc包,创建项目的时候用的,类似java的jar包。供大家参考使用,谢谢!