欢迎来到山村网

flex导出excel具体实现

2019-03-02 11:18:28浏览:365 来源:山村网   
核心摘要:flex导出excel的前提是需要插件as3xls-1.0.1.swc,下面为大家介绍下具体的实现需要插件 as3xls-1.0.1.swc代码如下:?xml version=

flex导出excel的前提是需要插件as3xls-1.0.1.swc,下面为大家介绍下具体的实现

需要插件 as3xls-1.0.1.swc代码如下:<?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"><fx:script><![CDATA[import com.as3xls.xls.ExcelFile;import com.as3xls.xls.Sheet;import mx.collections.ArrayCollection;import mx.controls.alert;import mx.controls.CheckBox;[Bindable]private var dp:Array = [{studentID:1,name:"2ssdl",gender:"为001",birthday:"4区",className:"5清道夫却无法"},{studentID:2,name:"2士大",gender:"1色调",birthday:"4却",className:"5为去去"},{studentID:3,name:"2访问",gender:"1色调",birthday:"飞4",className:"访问5"},{studentID:4,name:"访问2",gender:"0色调",birthday:"4却",className:"为5"},{studentID:5,name:"2各位",gender:"0色调",birthday:"4飞",className:"5为"}];private function onCreate(dg:DataGrid):void{var rowCount:int = dg.dataProvider.length;var colCount:int = dg.columnCount;var sheet:Sheet = new Sheet();sheet.resize(rowCount+1,colCount); //设置表格的范围var fields:Array = new Array();//用来保存字段for(var i:int=0; i< colCount;i++){sheet.setCell(0,i,dg.columns[i].headerText.toString());//表格第0行设置字段名fields.push(dg.columns[i].dataField.toString());}for(var i:int=0; i< rowCount;i++){var record:Object =dg.dataProvider[i];//获取某行insertRecordInSheet(i+1,sheet,record);}var excelFile:ExcelFile = new ExcelFile();//新建excel文件excelFile.sheets.addItem(sheet);//把表格添加入excel文件中var mbytes:ByteArray = excelFile.saveToByteArray();var file:FileReference = new FileReference();file.save(mbytes,"测试文件.xls"); // 定死文件名file.addEventListener(Event.COMPLETE, function (){alert.show("保存成功");});function insertRecordInSheet(row:int,sheet:Sheet,record:Object):void{for(var c:int; c < colCount; c++){var i:int = 0;for each(var field:String in fields){for each (var value:String in record){if (record[field].toString() == value)sheet.setCell(row,i,value);}i++;}}}}]]></fx:script><fx:Declarations><!-- 将非可视元素(例如服务、值对象)放在此处 --></fx:Declarations><mx:Panel><mx:Button label="导出" click="onCreate(myDG)"/><mx:DataGrid id="myDG" width="100%" rowCount="20" dataProvider="{dp}"><mx:columns><mx:DataGridColumn headerText="学号" dataField="studentID"/><mx:DataGridColumn headerText="姓名" dataField="name"/><mx:DataGridColumn headerText="性别" dataField="gender" width="50"/><mx:DataGridColumn headerText="生日" dataField="birthday" /><mx:DataGridColumn headerText="班级" dataField="className"/></mx:columns></mx:DataGrid></mx:Panel></s:Application>
(责任编辑:豆豆)
下一篇:

Ajax四种元素的关系介绍

上一篇:

Flex上传本地图片并提前浏览的实现方法

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com