- 浏览: 576115 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (237)
- Java (48)
- Flex3 (43)
- Spring (7)
- Hibernate (7)
- 杂文 (2)
- 设计模式 (3)
- 数据库相关 (32)
- Eclipse开发环境 (10)
- C/C++ (1)
- 随笔 (1)
- 生活点滴 (2)
- Flex4 (3)
- Oracle (6)
- SQLServer (6)
- Degrafa (1)
- ActionScript (2)
- JavaScript (11)
- MySQL (8)
- 开源项目 (4)
- AspectJ (0)
- Spring Security (1)
- SSO (0)
- PV3D (2)
- JBPM (1)
- JBoss (0)
- Tomcat (5)
- Struts (1)
- WebService (2)
- 算法 (1)
- 数据结构 (1)
- POI (2)
- Lucene (2)
- 其他 (3)
- Blazeds (2)
- Alternative 3D (0)
- Ibatis (3)
- Intellij (3)
- freemaker (0)
- Maven (5)
- web (4)
- Eclipse (1)
- velocity (1)
- Linux (7)
- CXF (3)
- html (2)
- JVM (1)
最新评论
-
jpsb:
多谢楼主,问题解决,主要就是svn版本不同导致的
Eclipse 导入本地svn项目的问题 -
yycdaizi:
lanmolsz 写道无法同意楼主的说法,楼主所谓的晚捕捉就是 ...
Java异常处理原则 -
lanmolsz:
无法同意楼主的说法,楼主所谓的晚捕捉就是典型的让异常控制程序的 ...
Java异常处理原则 -
cici_new_1987:
...
Java异常处理原则 -
雁行:
倒是怀疑这个功能来着
Eclipse 导入本地svn项目的问题
在Adobe的RIA开发环境下,flex并没有导出Excel的功能,在完成此类功能的时候,在网上Google了很多相关文章,其中提到了利用Flex将DataGrid的数据拼凑成字符串然后利用JSP获取字符串形成Excel文件,在浏览器端给用户提供Excel下载功能。
以上就是DataGrid导出Excel的主要思想。主要代码如下:
1.Flex端生成字符串:
public final class ExportToExcel { public function ExportToExcel() { super(); } /** 在导出数据的时候有可能出现单元格数据长度过长而导致Excel在显示时 * 出现科学计数法或者#特殊符号,在此设置单元格宽度比例WIDTHSCALE,在 * 代码中每个单元格的宽度扩展适当的比例值WIDTHSCALE。 */ public static var WIDTHSCALE:Number=2.0; /** * 将DataGrid转换为htmltable * @author 陈文锋 54cwf@163.com * @param: dg 需要转换成htmltable的DataGrid * @return: String */ public static function convertDGToHTMLTable(dg:DataGrid):String { //设置默认的DataGrid样式 var font:String = dg.getStyle('fontFamily'); var size:String = dg.getStyle('fontSize'); var str:String = ''; var colors:String = ''; var style:String = 'style="font-family:'+font+';font-size:'+size+'pt;"'; var hcolor:Array; //检索DataGrid的 headercolor if(dg.getStyle("headerColor") != undefined) { hcolor = [dg.getStyle("headerColor")]; } else { hcolor = dg.getStyle("headerColors"); } str+= '<table width="'+dg.width+'" border="1"><thead><tr width="'+dg.width+'" style="background-color:#' +Number((hcolor[0])).toString(16)+'">'; //设置tableheader数据(从datagrid的header检索headerText信息) for(var i:int = 0;i<dg.columns.length;i++) { colors = dg.getStyle("themeColor"); if(dg.columns[i].headerText != undefined) { str+="<th "+style+">"+dg.columns[i].headerText+"</th>"; } else { str+= "<th "+style+">"+dg.columns[i].dataField+"</th>"; } } str += "</tr></thead><tbody>"; colors = dg.getStyle("alternatingRowColors"); for(var j:int =0;j<dg.dataProvider.length;j++) { str+="<tr width=\""+Math.ceil(dg.width)+"\">"; for(var k:int=0; k < dg.columns.length; k++) { if(dg.dataProvider.getItemAt(j) != undefined && dg.dataProvider.getItemAt(j) != null) { if((dg.columns[k] as DataGridColumn).labelFunction != undefined) { str += "<td width=\""+Math.ceil((dg.columns[k] as DataGridColumn).width*ExportToExcel.WIDTHSCALE)+"\" "+style+">"+(dg.columns[k] as DataGridColumn).labelFunction(dg.dataProvider.getItemAt(j),dg.columns[k].dataField)+"</td>"; } else { str += "<td width=\""+Math.ceil(dg.columns[k].width*ExportToExcel.WIDTHSCALE)+"\" "+style+">"+dg.dataProvider.getItemAt(j)[(dg.columns[k] as DataGridColumn).dataField]+"</td>"; } } } str += "</tr>"; } str+="</tbody></table>"; return str; } /** * 将制定的DataGrid加载到Excel文件,此方法传入一个htmltable字符串参数到后台Script脚本,然后浏览器给用户提供一个Excel下载 * @author Chenwenfeng * @params dg 需要导入的数据源DataGrid * @params url excel文件下载路径 */ public static function loadDGInExcel(dg:DataGrid,url:String):void { //设置URLVariables参数变量,动态增加属性htmltable var variables:URLVariables = new URLVariables(); variables.htmltable = convertDGToHTMLTable(dg); var u:URLRequest = new URLRequest(url); u.data = variables; u.method = URLRequestMethod.POST; navigateToURL(u,"_self");//"_self" 指定当前窗口中的当前帧。 //"_blank" 指定一个新窗口。 //"_parent" 指定当前帧的父级。 //"_top" 指定当前窗口中的顶级帧。 } }
2.JSP代码:
<%@ page language="java"%> <%@ page contentType="application/msexcel;charset=GBK" pageEncoding="UTF-8"%> <% request.setCharacterEncoding("UTF-8"); response.setHeader("Content-disposition","attachment; filename=DownLoad.xls"); String str = request.getParameter("htmltable"); out.print(str); %>
一般情况下将JSP文件放在工程的WebRoot/bin目录下,然后在调用AS类的loadDGInExcel函数,注意需要得到正确的Excel文件下载路径url.还有就是JSP的设置问题,setHeader函数的第二个参数attachment表示会有下载提示框出现,若换成inline(似乎是这个单词)则没有下载提示框,浏览器会直接打开Excel文件
PS:在开始的时候还出过Excel出现科学计数法或者#等问题(因为Excel的单元格宽度太小造成的),后来设置了一个单元格宽度扩展比例。问题解决了。
- DataGridToExcel.rar (2 KB)
- 下载次数: 693
评论
3 楼
dawfgso
2010-11-08
如果我的DataGrid里边是这样写的:dataField="user.userName",要取它的值应该怎么办啊?上边的方法都取不到,如果楼主了解的话,希望能尽快回复!谢谢
2 楼
cwfmaker
2010-02-02
toshibasony 写道
乱码 晕
什么意思?
1 楼
toshibasony
2010-02-02
乱码 晕
发表评论
-
AIR html 内存泄露
2010-07-15 14:21 1693众所周知,Flex虽然在客户体验方面独领风骚,但是其 ... -
Flex 内部命名空间
2010-05-11 13:27 1298使用方式如下: //引用命名空间 im ... -
AIR开发下的ALert窗口无法弹出
2010-05-05 10:55 1511最近在从事AIR编程。AIR开发和之前做的RIA开发还是 ... -
Flex调用JS代码
2010-03-03 11:23 5249在Flex开发中有时候需要调用JS代码,例如关闭浏览 ... -
Flex设置浏览器标题
2010-03-03 11:17 3012在Flex下设置页面浏览器标题Title工有两种方式 ... -
Flex版在线PhotoShop(2个)
2010-03-02 13:47 2143刚刚看到了一个Flex版本的Online PhotoShop工 ... -
Degrafa渲染DataGrid
2009-12-22 09:58 2079在DataGrid中可以利用多种组件实现Column ... -
Flex3D 视屏网站
2009-12-21 08:28 1142http://www.hboimagine.com/#/the ... -
多种DataGrid ItemRender实现
2009-12-10 15:00 2071在Flex开发中,可能在展示数据方面,DataGr ... -
Flex RSL(Runtime Shared Library)
2009-12-10 08:03 1748RSL是 Runtime Shared Lib ... -
Degrafa(Beta3)源码
2009-12-08 17:01 1209Degrafa源码共享下载,见附件。 -
Flex 动态换肤
2009-12-08 16:57 1800可能很多人在写Flex程序的时候为了界面的美化,都会用 ... -
Flex Sound Effect 异常
2009-12-08 13:14 1134早上在写Flex代码的时候,想放首歌听听,不知道什么原 ... -
推荐一个不错的Flex网站
2009-12-07 15:51 1244今天看到了一个相当不错的关于Flex/Flash开发的英文站点 ... -
Flex+Java文件上传
2009-12-07 10:14 4417在研究Flex DataGrid导入exc ... -
Flex DataGrid导入Excel(一)
2009-12-02 18:46 5561这篇Blog只是写实现思路。 记得刚毕业 ... -
Flex版FusionCharts图形组件
2009-11-27 08:34 3833在Flex图形领域,FusionCharts为广 ... -
Flex高级表格(Mecgrid)
2009-11-20 13:52 4380最近在考虑DataGrid单元格定位的问题时,收集到了 ... -
DataGrid单元格定位
2009-11-20 13:39 4834在Flex项目开发中,相信很多人会用到DataG ... -
Flex 之联合验证
2009-11-06 16:57 1495在数据库编辑模块的代码中通常在增加一条记录时,都会碰 ...
相关推荐
### DataGrid导出EXCEL的几种方法:深入探讨与实践 在Web开发中,将数据导出为Excel格式是常见的需求之一,尤其是当涉及到大量数据分析和报表制作时。本文将详细解析如何使用ASP.NET中的DataGrid控件实现数据导出至...
本例提供的"vb DataGrid导出excel例子"是一个很好的学习资源,它将展示如何在VB中实现这个功能,使得开发人员能够快速地将用户界面的数据转换为可编辑的Excel文件。 首先,我们需要了解VB中与DataGrid和Excel交互的...
而“Flex的DataGrid导出Excel”这个主题涉及到的是如何将DataGrid中的数据显示到Microsoft Excel文件中,以便用户可以进一步处理、分析或共享这些数据。这个过程通常分为几个关键步骤: 1. **数据准备**:首先,你...
本资源"DataGrid导出EXCEL的几个方法(WebControl).rar"似乎提供了几种不同的方法来实现这个功能。接下来,我们将详细探讨几种常见的DataGrid数据导出到Excel的方法。 1. **Response.Write和HTML表格** 这是最...
文件`Jquery_easyui_datagrid_js导出excel.doc`可能是文档说明或者包含插件使用的示例代码。通常,jQuery插件能简化Datagrid数据导出的操作。一种常见的方式是使用`html2canvas`和`jsPDF`库,它们可以将HTML内容转换...
VB6 DataGrid中的数据导出到Excel 本篇文章将详细介绍如何使用VB6将DataGridView中的数据导出到Excel文件中。下面将对标题、描述、标签和部分内容进行解释,并生成相关的知识点。 标题:VB6 DataGrid中的数据导出...
1、生成默认的基本对话框工程,工程名为ProjectX。 2、添加DataGrid1控件:Ctrl+W打开类向导,工程->增加到工程...9、双击导出Excel按钮,添加单击响应函数及功能代码。 注意:如何获取DataGrig1的行数(记录集的数量)
本主题将深入探讨如何在Flex中实现组件DataGrid的数据导出功能,使其能够生成Excel文件供用户下载和处理。 DataGrid是Flex中常用的一个组件,它用于展示结构化数据,通常用于表格形式的展示。在Flex中,我们可以...
在本文中,我们将深入探讨如何在WPF(Windows Presentation Foundation)环境中使用DataGrid控件来实现数据的显示、编辑、保存以及导出到Excel和Word的功能。这些功能对于开发高效且用户友好的桌面应用程序至关重要...
FileStream BookStream = new FileStream(saveFileDialog.FileName.ToString(), FileMode.Create, FileAccess.Write);//定义文件流 book.Write(BookStream);... MessageBox.Show("导出保存成功!");
private void daochu_Click(object sender, ... if (dataGrid.Columns[i].Visibility == System.Windows.Visibility.Visible)//只导出可见列 { dt.Columns.Add(dataGrid.Columns[i].Header.ToString());//构建表头
easyui-datagrid导出至Excel插件,中文没有乱码问题。
"EasyUI Datagrid 导出到Excel"这一主题涉及的是如何将EasyUI Datagrid中的数据显示在Excel表格中,方便用户进行数据处理和分析。以下是对这个知识点的详细说明: 1. EasyUI Datagrid简介: EasyUI Datagrid是基于...
然而,系统默认并不支持直接将DataGrid中的数据导出到Excel格式,这就需要我们采用非Out-of-Browser(OOB)的方式来实现这个功能。以下将详细介绍如何在Silverlight 4中实现DataGrid数据导出到Excel。 首先,我们...
### easyui的datagrid数据excel导出 #### 一、知识点概览 1. **EasyUI框架简介** 2. **DataGrid组件概述** 3. **DataGrid的列配置** 4. **将DataGrid转换为表格(Table)结构** 5. **导出至Excel的具体实现** 6. *...
将flexdatagrid的数据导出到excel 只需传入datagrid id 以及要导出的excel名称
### MFC 和 C++ 使用 ADO 将 DataGrid 数据导出至 Excel 的方法 #### 一、基础知识介绍 - **MFC(Microsoft Foundation Classes)**:它是微软提供的一套面向对象的类库,用于简化 Windows API 的使用。在桌面应用...
### DataGrid导出Excel最简单方法 在日常的软件开发工作中,经常需要处理各种数据的导出需求,其中将DataGrid中的数据导出为Excel格式是最常见的操作之一。本篇文章将详细介绍一种简单高效的DataGrid导出Excel的...