`

页面表格导出中文名的excel

 
阅读更多

本文转载自:http://bbs.csdn.net/topics/300022606

 

Response.setHeader("Content-Disposition", "attachment; filename=" + fileName+".xls");
如果file.Name为中文则乱码。解决办法是
方法1:
response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));
下载的程序里有了上面一句,一般在IE6的下载提示框上将正确显示文件的名字,无论是简体中文,还是日文。但是文字只要超过17个字,就不能下载了。
一. 通过原来的方式,也就是先用URLEncoder编码,当中文文字超过17个时,IE6 无法下载文件。这是IE的bug,参见微软的知识库文章 KB816868 。原因可能是IE在处理 Response Header 的时候,对header的长度限制在150字节左右。而一个汉字编码成UTF-8是9个字节,那么17个字便是153个字节,所以会报错。而且不跟后缀也不对.
方法2:
response.setHeader( "Content-Disposition", "attachment;filename=" + new String( fileName.getBytes("gb2312"), "ISO8859-1" ) ); 
在确保附件文件名都是简 体中文字的情况下,那么这个办法确实是最有效的,不用让客户逐个的升级IE。如果台湾同胞用,把gb2312改成big5就行。但现在的系统通常都加入了 国际化的支持,普遍使用UTF-8。如果文件名中又有简体中文字,又有繁体中文,还有日文。那么乱码便产生了。另外,在上Firefox (v1.0-en)下载也是乱码。 

分享到:
评论

相关推荐

    易语言高级表格导出EXCEL

    在"易语言高级表格导出EXCEL"这个主题中,我们主要关注的是如何使用易语言来操作表格数据,并将这些数据高效地导出到Microsoft Excel格式。易语言提供了丰富的库函数和组件,使得开发者可以方便地实现对表格数据的...

    oracle导出表结构到excel中

    例如,如果你想要导出名为`employees`的表,你可以编写如下的SELECT语句: ```sql SELECT * FROM employees; ``` 执行这个查询后,你将看到表的所有记录。为了将这些数据复制到Excel,确保结果集的列宽适中,以便...

    易语言EXCEL快速导入导出

    在处理数据操作时,易语言提供了与Excel交互的功能,能够方便地实现Excel表格的数据导入和导出。本示例将详细介绍如何利用易语言进行EXCEL快速导入导出的操作。 首先,我们需要了解易语言中与Excel相关的基础组件和...

    C# 将数据导出到Excel汇总

    这种方法可以将页面上所有的HTML元素,包括按钮、表格、图片等,全部转换并输出到Excel文件中。实现的关键在于设置`Response`对象的属性。具体步骤如下: 1. **初始化Response**:首先,调用`Response.Clear()`清除...

    数据导出EXCEL 解决中文名乱码 同时赠由二进制转换成文件(解决中文名乱码)

    然而,当涉及到包含中文字符的数据时,可能会遇到一个常见的问题——中文名乱码。这个问题主要出现在文件名或者Excel表格中的中文字段。本篇文章将详细探讨如何解决在数据导出到Excel时出现的中文乱码问题,并介绍...

    CloseXML导出Excel Demo

    这段代码创建了一个名为"Example.xlsx"的Excel文件,其中包含一个名为"Sheet1"的工作表,工作表的第一行第一列填有文本"Hello, CloseXML!"。CloseXML库提供了丰富的API,可以方便地设置单元格的样式,如字体、颜色、...

    SQLite导出数据到excel

    当需要将SQLite数据库中的数据导出到Excel表格时,可以采用以下方法。 首先,我们需要理解SQLite数据库的结构。SQLite数据库通常包含一个或多个表,每个表由列和行组成,类似于Excel工作表中的单元格。为了将这些...

    C# 导出Excel文件

    ### C# 导出Excel文件的关键技术点与实现方法 #### 概述 在实际开发过程中,导出数据到Excel是一种常见的需求,特别是在企业级应用中。本文将深入探讨如何使用C#语言来实现导出数据到Excel的功能,并提供一份实用的...

    导出jsp页面为excel文档

    "导出jsp页面为excel文档"这个话题,主要涉及的是如何在Java环境中,利用JSP(JavaServer Pages)技术生成Excel报表,并通过浏览器以下载或直接打开的方式呈现给用户。 首先,我们要明白,JSP是一种基于Java的...

    如何在jsp导出到Excel文件

    在页面中编写用于输出Excel的数据,这些数据应遵循Excel的格式规范,如使用逗号分隔值(CSV)或特定的表格结构。 #### 二、使用Apache POI组件操作Excel 对于更复杂的Excel文件生成需求,尤其是涉及到动态数据...

    精典简单vs.NET 下SQL数据库导出/导入Excel

    #### 一、导出 GridView 数据至 Excel 的原理及步骤 - **背景介绍**:本文档介绍了一种在 .NET 框架下的 B/S 架构环境中,如何高效地将 GridView 控件中的数据导出到 Excel 文件的方法。此方法的一个显著特点是不...

    java导出excel文件并且下载到客户端(包括解决中文乱码).txt

    ### Java导出Excel文件并下载到客户端(含解决中文乱码问题) 在现代的企业级应用开发中,数据导出功能是非常常见的一种需求。特别是在B/S架构的应用中,用户经常需要将查询结果导出为Excel文件以便进行后续的数据...

    mysql简单导出EXCEL易语言源码

    MySQL数据库是世界上最流行的开源关系型数据库之一,而Excel则是Microsoft Office套件中用于数据分析和管理的电子表格工具。本源码示例展示了如何通过易语言编程,将MySQL数据库中的数据导出为Excel文件,这对于数据...

    excel导出TTF16

    在Excel中,通常我们不会直接导出为字体文件,而是处理数据或者创建表格。然而,如果你需要将Excel中的某些数据转换为字体文件,这可能是为了定制特定的文字样式或符号。下面将详细解释这个过程和相关的知识点。 1....

    56个民族(五十六个民族)中文名、拼音、英文名-MySQL脚本、Excel文件

    这篇文档将深入探讨关于"56个民族(五十六个民族)中文名、拼音、英文名"的相关知识点,包括如何利用MySQL脚本和Excel文件处理这些数据。 首先,56个民族是中华人民共和国官方认定的民族构成,它们代表了中国的多元...

    DataGirdView导出数据到Excel

    ### DataGirdView导出数据到Excel的知识点详解 在.NET框架中,`DataGridView`控件是用于显示数据的一种常用工具,它能够直观地展示表格形式的数据,并支持各种交互操作。有时,为了便于数据分析或者与他人共享数据...

    Net 导出excel的若干种方法

    接着,设置`ContentEncoding`为"GB2312",确保中文字符能够正确编码,`ContentType`设置为"application/ms-excel",告诉浏览器这是一个Excel文件。随后,使用`StringWriter`和`HtmlTextWriter`将`DataGrid`的内容...

    出EXCEL文件带中文标题的userobject

    标题中的“出EXCEL文件带中文标题的userobject”指的是在PowerBuilder(PB)环境中,创建一个用户对象(User Object),该对象的功能是导出数据到Excel文件,并且Excel文件的列标题支持中文。在PowerBuilder中,User...

    易语言-导出EXCEL模块

    本模块名为“导出EXCEL模块”,其核心功能是允许用户在没有安装Microsoft Excel的计算机上生成和导出Excel表格。这个特性对于那些希望在不依赖特定软件环境下进行数据处理和分析的应用来说,非常实用。 模块的实现...

    GridView导出EXCEL.doc

    `filename`字段设置了具体的文件名,本例中为“DMReport”加上当前日期时间戳后缀,文件扩展名为.xls,表示Excel文件。 4. **设置编码与内容类型**:使用`Response.ContentEncoding`设置输出的编码为UTF8,确保支持...

Global site tag (gtag.js) - Google Analytics