`
dzl84394
  • 浏览: 60675 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jsp导出excel中文乱码,鄙视不验证就转发的

 
阅读更多

jsp导出excel文件,导出时firefox乱码或360乱码,反正不正常,

原本代码如下:

response.setHeader("Content-Disposition", "attachment;filename="
+ new String(("财务报表-采购明细统计.xls").getBytes(), "ISO-8859-1"));

这时firefox是好的,我也没测IE、360啥的

第一次提交就是这样,我相信大家也都是这个样子的,

会计说她IE打开时乱码,我就搜了一下,网上大部分提供了一个方法:

public static String toUtf8String(String s){
StringBuffer sb = new StringBuffer();
for (int i=0;i<s.length();i++){
char c = s.charAt(i);
if (c >= 0 && c <= 255){sb.append(c);}
else{
byte[] b;
try { b = Character.toString(c).getBytes("utf-8");}
catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sb.toString();
}

jsp里面代码如下:

response.setHeader("Content-Disposition", "attachment;filename="
+ fb.toUtf8String("财务报表_支付宝汇总.xls"));

可是并没有解决问题,但是大部分网页搜出来的都是这样的

这时才发现是浏览器的问题

解决方案代码如下:

<%@page import="java.net.URLEncoder"%>

String outfilename = "财务报表.xls";
if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") > 0)
outfilename = new String(outfilename.getBytes("UTF-8"), "ISO8859-1");//firefox

else if (request.getHeader("User-Agent").toUpperCase().indexOf("IE") > 0)
outfilename = URLEncoder.encode(outfilename, "UTF-8");//IE浏览器
response.setHeader("Content-Disposition", "attachment;filename="+outfilename);

这才是王道

分享到:
评论

相关推荐

    jsp页面导出excel

    当需要从JSP页面导出数据到Excel文件时,这通常涉及到服务器端的数据处理和响应生成。下面我们将详细讨论如何在JSP页面上实现这个功能。 1. **使用Apache POI库** Apache POI是一个开源项目,提供API来处理...

    jsp导出excel一般问题及汇总

    1. **乱码问题**:在导出Excel时,文件名或内容可能出现乱码。解决方法是确保设置正确的字符编码,例如设置`response.setCharacterEncoding("UTF-8")`,并指定文件名的编码,如`response.setHeader("Content-...

    jsp导出Excel;简单实用!导出Excel;导出Word

    下面将详细介绍如何使用JSP实现Excel和Word的导出功能。 **一、导出Excel** 1. **引入库**: 要导出Excel,通常我们会用到Apache POI库,这是一个Java API,专门用于处理Microsoft Office格式的文件,包括Excel。...

    java及jsp下导出excel表格

    ### Java与JSP环境下导出Excel表格:深入解析与实践 在现代企业级应用开发中,数据导出至Excel表格是一种常见的需求,特别是在报表、数据分析和数据交换等场景中。Java作为一种广泛使用的后端开发语言,配合JSP...

    JSP导出excel和pdf格式

    本篇将详细讲解如何利用JSP来导出数据为Excel和PDF两种常用格式。 一、JSP导出Excel 1. **准备库**:在JSP中导出Excel,通常会用到Apache POI库。这是一个用于读写Microsoft Office格式文件的Java库,包括Excel。...

    jsp导入导出excel文件

    在Java Web开发中,JSP(JavaServer Pages)经常用于创建动态网页,而与之配合进行Excel文件导入导出的功能则常使用Apache POI库。Apache POI是Apache软件基金会的一个开源项目,提供了处理Microsoft Office格式文件...

    JSP页面导出EXCEL简单方法

    要将JSP页面的HTML表格导出为Excel,我们通常会利用HTTP响应头来设置内容类型为`application/vnd.ms-excel`,这样浏览器就会将响应的数据解析为Excel文件。以下是简单的步骤: 1. **创建HTML表格**:在JSP页面(如...

    java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose

    java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 的问题 java aspose java aspose word 上传到服务器 导出的word 中文字体乱码 ...

    jsp程序excel导出功能

    本人试过了可以用,做jsp程序导出excel功能的可以参考下,下载后按照模版进行修改

    关于jsp导出excel用javascript实现

    关于jsp导出excel用javascript实现

    导出excel的jsp开发

    查询数据跳转到当前的jsp,通过获取后台的接口数据导出excel文件,最后再自动跳转到上一个的页面。

    Flex的DataGrid导出Excel

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

    JSP Struts2 分页 导出Excel

    **JSP Struts2 分页 导出Excel** 在Web开发中,经常需要处理大量数据,这时分页显示和导出功能就显得尤为重要。JSP(JavaServer Pages)和Struts2作为Java Web开发中的常见技术,可以帮助我们构建动态、交互的网页...

    jsp导出excel并支持分sheet导出的方法.docx

    ### JSP导出Excel并支持分Sheet导出的方法详解 #### 概述 在Web开发领域,特别是使用Java Server Pages (JSP)进行后端处理的应用程序中,经常需要将数据库中的数据导出到Excel文件中供用户下载或进一步处理。这种...

    JSP SERVLET 导出数据库内容到EXCEL

    总结来说,"JSP SERVLET 导出数据库内容到EXCEL"是一个典型的Java Web应用场景,结合了JSP的视图呈现、Servlet的业务处理和数据库操作,以及第三方库Apache POI的文件生成能力,为企业级应用提供了强大的数据导出...

    导出jsp页面为excel文档

    描述部分进一步明确了文章的目的——不仅仅是在JSP页面上显示数据,更重要的是能够将这些数据导出成Excel格式,方便用户在客户端进行进一步的操作,如数据分析、打印等。这里强调的是“快速生成报表”,意味着介绍的...

    jsp实现excel上传至数据库,以及 从数据库导出excel

    本项目以"jsp实现excel上传至数据库,以及从数据库导出excel"为主题,提供了一种实用的方法,适合初学者学习。下面将详细解释这个过程涉及的关键技术点。 1. JSP(JavaServer Pages):JSP是一种动态网页技术,允许...

    javaweb JSP页面导出和导入excel表格

    本篇文章将详细探讨如何在JSP中实现Excel的导出和导入功能,这对于构建企业级办公系统是非常实用的。 一、导出Excel 1. **使用Apache POI库**:Apache POI是一个流行的API,用于读取和写入Microsoft Office格式的...

    flex前台直接导出excel

    "flex前台直接导出excel"这个话题,指的是在使用Adobe Flex这一前端框架时,如何直接在客户端生成并导出Excel文件,而不需要通过服务器端如JSP或Java进行处理。这种方式可以避免因为字符编码问题导致的乱码,同时也...

    JSP中导入导出Excel文件.

    本文将深入探讨如何在JSP环境中实现Excel文件的导入与导出功能,利用Apache POI库作为主要工具。 ### Apache POI简介 Apache POI是一个开源的Java API,用于读写Microsoft Office格式的文件,如Word、Excel等。它...

Global site tag (gtag.js) - Google Analytics