flex 把datagrid的内容导出到Excel
文章分类:Flash编程
SDK要3.4以上的版本:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.controls.dataGridClasses.DataGridColumn;
import com.as3xls.xls.Cell;
import mx.collections.ArrayCollection;
import com.as3xls.xls.Sheet;
import com.as3xls.xls.ExcelFile;
private var fileReference:FileReference;
private var xls:Class;
private var sheet:Sheet;
[Bindable]
private var fields:Array = new Array();
[Bindable]
private var ItemDGDataProvider:ArrayCollection = new ArrayCollection([
{name:"Item1",value:"21",qty:"3",cost:"12.21", apples: "1"},
{name:"Item2",value:"20",qty:"4",cost:"12.22", apples: "1"},
{name:"Item3",value:"22",qty:"5",cost:"12.23", apples: "1"},
{name:"Item4",value:"23",qty:"2",cost:"12.24", apples: "1"}
]);
private function fileReference_Cancel(event:Event):void
{
fileReference = null;
}
private function exportToExcel():void
{
sheet = new Sheet();
var dataProviderCollection:ArrayCollection = rebateByItemDG.dataProvider as ArrayCollection;
var rowCount:int = dataProviderCollection.length;
sheet.resize(rowCount + 1,rebateByItemDG.columnCount);
var columns:Array = rebateByItemDG.columns;
var i:int = 0;
for each (var field:DataGridColumn in columns){
fields.push(field.dataField.toString());
sheet.setCell(0,i,field.dataField.toString());
i++;
}
for(var r:int=0; r < rowCount; r++)
{
var record:Object = dataProviderCollection.getItemAt(r);
/*insert record starting from row no 2 else
headers will be overwritten*/
insertRecordInSheet(r+1,sheet,record);
}
var xls:ExcelFile = new ExcelFile();
xls.sheets.addItem(sheet);
var bytes: ByteArray = xls.saveToByteArray();
var fr:FileReference = new FileReference();
fr.save(bytes,"SampleExport.xls");
}
private function insertRecordInSheet(row:int,sheet:Sheet,record:Object):void
{
var colCount:int = rebateByItemDG.columnCount;
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++;
}
}
}
]]>
</mx:Script>
<mx:VBox width="100%" height="100%">
<mx:Form>
<mx:FormItem label="Export Datagrid items to Excel?" fontWeight="bold">
<mx:Form>
<mx:HBox width="100%" verticalAlign="middle">
<mx:DataGrid id="rebateByItemDG" includeInLayout="true" visible="true" dataProvider="{ItemDGDataProvider}" width="100%" editable="true"/>
<mx:Button label="Export To Excel" click="exportToExcel();"/>
</mx:HBox>
</mx:Form>
</mx:FormItem>
</mx:Form>
</mx:VBox>
</mx:Application>
分享到:
相关推荐
flex中dataGrid导出数据到excel中,不存在乱码问题
本文将深入探讨如何使用Flex来实现一个功能,即把Datagrid组件中的内容导出到Excel文件。 Datagrid是Flex中的一个核心组件,用于展示表格数据。它提供了丰富的功能,如排序、分页和自定义列显示。然而,有时用户...
本教程将详细介绍如何实现从Flex DataGrid导出数据到Excel的功能。 首先,让我们了解Flex DataGrid。它是一个强大的组件,用于显示二维数据集,通常包含可排序和可分页的列。DataGrid可以绑定到各种数据源,包括...
本主题将深入探讨如何在Flex中实现组件DataGrid的数据导出功能,使其能够生成Excel文件供用户下载和处理。 DataGrid是Flex中常用的一个组件,它用于展示结构化数据,通常用于表格形式的展示。在Flex中,我们可以...
而“Flex的DataGrid导出Excel”这个主题涉及到的是如何将DataGrid中的数据显示到Microsoft Excel文件中,以便用户可以进一步处理、分析或共享这些数据。这个过程通常分为几个关键步骤: 1. **数据准备**:首先,你...
AdvancedDataGrid导出复杂表头excel
导出Flex Datagrid到Excel的过程通常涉及后端服务器的参与,因为Flex本身不支持直接生成Excel文件。在这种情况下,Java后端作为一个中间层,接收Flex前端发送的Datagrid数据,然后转换成Excel格式。这个过程涉及到几...
将flexdatagrid的数据导出到excel 只需传入datagrid id 以及要导出的excel名称
flex中将dataGrid中的数据导出到excel中,不存在乱码问题
总之,利用ASP架构导出Flex DataGrid数据到Excel,需要在客户端和服务器端进行协调,涉及数据转换、服务器文件操作和通信协议等多个环节。通过合理的设计和优化,可以实现高效且可靠的导出功能。
使用flash builder测试成功,绝对可以使用,使用的swc包都包含在里面 主要作用:使用flex把datagrid里面的数据(ArrayCollection)导出为Excel文件、CSV文件和导出到剪贴板
要将Flex Datagrid的数据保存到Excel,我们需要实现一个数据转换和导出的过程。这通常涉及到将ArrayCollection或其他数据结构转换为Excel兼容的格式,然后利用特定的库或API写入到Excel文件。在提供的标签“源码”中...
总的来说,将Flex DataGrid导出为Excel涉及前后端的协同工作,包括数据序列化、Java中的Excel文件生成以及网络通信。掌握这些知识点,能帮助你实现高效、灵活的数据导出功能。在实际开发中,根据项目需求和性能要求...
综上所述,实现“flex datagrid to excel”功能,你需要理解Flex的DataGrid组件、数据处理、文件操作以及ActionScript编程,将DataGrid中的数据转换为Excel可读格式,并通过用户交互将数据导出到本地文件系统。
本知识点主要聚焦于Flex3如何实现数据的读写操作,特别是与Microsoft Excel文件的交互,即“Flex3ReadWriteExcel(flex3导入导出excel表格)”。这在实际业务场景中非常常见,例如数据分析、报表生成以及数据交换等。 ...
2. **导出Excel**:这是指将数据从Flex应用程序中导出到Microsoft Excel格式的功能。Excel是全球广泛使用的电子表格软件,支持复杂的数据分析和可视化。将数据导出至Excel可以便于用户进一步分析或与其他系统集成。 ...
Flex DataGrid导出成excel的方法,介绍了导出的两种方式poi和as3xls
标题中的“Flex导出Excel之as3xls”指的是在Adobe Flex应用中,使用as3xls库来实现将数据导出为Microsoft Excel文件的功能。as3xls是一个开源的ActionScript 3库,它允许Flex开发者在客户端创建和操作Excel文档,而...
在这个特定的项目"具有分页功能的flex的DataGrid"中,我们主要关注两个核心功能:分页和数据导出到Excel。 分页功能是提高用户界面性能和用户体验的关键元素,尤其是在处理大数据集时。Flex中的DataGrid可以通过...