`
nianshi
  • 浏览: 420676 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Flex把datagrid的内容导出到Excel

    博客分类:
  • Flex
阅读更多
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>
分享到:
评论
1 楼 hyx0914 2011-12-12  
你这里用到了什么swc包吧?

相关推荐

    flex中dataGrid导出数据到excel中

    flex中dataGrid导出数据到excel中,不存在乱码问题

    flex 把datagrid的内容导出到Excel

    本文将深入探讨如何使用Flex来实现一个功能,即把Datagrid组件中的内容导出到Excel文件。 Datagrid是Flex中的一个核心组件,用于展示表格数据。它提供了丰富的功能,如排序、分页和自定义列显示。然而,有时用户...

    将Flex DataGrid数据导出到Excel中

    本教程将详细介绍如何实现从Flex DataGrid导出数据到Excel的功能。 首先,让我们了解Flex DataGrid。它是一个强大的组件,用于显示二维数据集,通常包含可排序和可分页的列。DataGrid可以绑定到各种数据源,包括...

    Flex中组件datagrid导出Excel

    本主题将深入探讨如何在Flex中实现组件DataGrid的数据导出功能,使其能够生成Excel文件供用户下载和处理。 DataGrid是Flex中常用的一个组件,它用于展示结构化数据,通常用于表格形式的展示。在Flex中,我们可以...

    Flex的DataGrid导出Excel

    而“Flex的DataGrid导出Excel”这个主题涉及到的是如何将DataGrid中的数据显示到Microsoft Excel文件中,以便用户可以进一步处理、分析或共享这些数据。这个过程通常分为几个关键步骤: 1. **数据准备**:首先,你...

    flex导出复杂excel

    AdvancedDataGrid导出复杂表头excel

    flex通过java后台讲datagrid导出为excel

    导出Flex Datagrid到Excel的过程通常涉及后端服务器的参与,因为Flex本身不支持直接生成Excel文件。在这种情况下,Java后端作为一个中间层,接收Flex前端发送的Datagrid数据,然后转换成Excel格式。这个过程涉及到几...

    flex datagrid 导出excel的as

    将flexdatagrid的数据导出到excel 只需传入datagrid id 以及要导出的excel名称

    flex中将dataGrid中的数据导出到excel中

    flex中将dataGrid中的数据导出到excel中,不存在乱码问题

    利用ASP架构将flex中的datagrid数据导出为excel表格方式。

    总之,利用ASP架构导出Flex DataGrid数据到Excel,需要在客户端和服务器端进行协调,涉及数据转换、服务器文件操作和通信协议等多个环节。通过合理的设计和优化,可以实现高效且可靠的导出功能。

    Flex datagrid导出为Excel文件、CSV文件和到剪贴板

    使用flash builder测试成功,绝对可以使用,使用的swc包都包含在里面 主要作用:使用flex把datagrid里面的数据(ArrayCollection)导出为Excel文件、CSV文件和导出到剪贴板

    flex datagrid 数据保存到excel以及从excel读取数据

    要将Flex Datagrid的数据保存到Excel,我们需要实现一个数据转换和导出的过程。这通常涉及到将ArrayCollection或其他数据结构转换为Excel兼容的格式,然后利用特定的库或API写入到Excel文件。在提供的标签“源码”中...

    利用java 后台导出Flex DataGrid为Excel

    总的来说,将Flex DataGrid导出为Excel涉及前后端的协同工作,包括数据序列化、Java中的Excel文件生成以及网络通信。掌握这些知识点,能帮助你实现高效、灵活的数据导出功能。在实际开发中,根据项目需求和性能要求...

    flex datagrid to excel

    综上所述,实现“flex datagrid to excel”功能,你需要理解Flex的DataGrid组件、数据处理、文件操作以及ActionScript编程,将DataGrid中的数据转换为Excel可读格式,并通过用户交互将数据导出到本地文件系统。

    Flex3ReadWriteExcel(flex3导入导出excel表格)

    本知识点主要聚焦于Flex3如何实现数据的读写操作,特别是与Microsoft Excel文件的交互,即“Flex3ReadWriteExcel(flex3导入导出excel表格)”。这在实际业务场景中非常常见,例如数据分析、报表生成以及数据交换等。 ...

    FLEX导出EXCEL支持合并隐藏单元格

    2. **导出Excel**:这是指将数据从Flex应用程序中导出到Microsoft Excel格式的功能。Excel是全球广泛使用的电子表格软件,支持复杂的数据分析和可视化。将数据导出至Excel可以便于用户进一步分析或与其他系统集成。 ...

    DataGrid导出excel_poi和as3xls

    Flex DataGrid导出成excel的方法,介绍了导出的两种方式poi和as3xls

    Flex导出Excel之as3xls(包括datagrid全选功能)

    标题中的“Flex导出Excel之as3xls”指的是在Adobe Flex应用中,使用as3xls库来实现将数据导出为Microsoft Excel文件的功能。as3xls是一个开源的ActionScript 3库,它允许Flex开发者在客户端创建和操作Excel文档,而...

    具有分页功能的flex的DataGrid

    在这个特定的项目"具有分页功能的flex的DataGrid"中,我们主要关注两个核心功能:分页和数据导出到Excel。 分页功能是提高用户界面性能和用户体验的关键元素,尤其是在处理大数据集时。Flex中的DataGrid可以通过...

Global site tag (gtag.js) - Google Analytics