当前位置:文档之家› excel导到客户端的方法

excel导到客户端的方法



java如何将导出的excel下载到客户端

求大神解答,另外 我使用这个 HttpServletResponse response = ServletActionContext.getResponse();ServletActionContext这个方法是不是struts中的,但是我没用struts开发
分享到:
2013-08-16 15:42 提问者采纳
package com.mr;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 利用Servlet导出Excel
* @author CHUNBIN
*
*/
public class ExportExcelServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");//设置request的编码方式,防止中文乱码
String fileName ="导出数据";//设置导出的文件名称
StringBuffer sb = new StringBuffer(request.getParameter("tableInfo"));//将表格信息放入内存
String contentType = "application/vnd.ms-excel";//定义导出文件的格式的字符串
String recommendedName = new String(fileName.getBytes(),"iso_8859_1");//设置文件名称的编码格式
response.setContentType(contentType);//设置导出文件格式
response.setHeader("Content-Disposition", "attachment; filename=" + recommendedName + "\"");//
response.resetBuffer();
//利用输出输入流导出文件
ServletOutputStream sos = response.getOutputStream();
sos.write(sb.toString().getBytes());
sos.flush();
sos.close();
}
}




<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>




导出Excel












学号姓名科目分数
10001赵二高数82
10002

张三

高数94
10001赵二线数77
10002张三线数61







以上代码来自网络:https://www.doczj.com/doc/9011503398.html,/blog/1322097
追问谢谢你,不过这个导出功能我事先做了,怎么讲导出的excel下载到客户端啊
回答java代码34-37行,当你点击的时候,会把excel以流的方式返回给浏览器,浏览器就会弹出下载窗口了。。

ServletActionContext cannot be resolved这个错误是因为你没有导入struts的包。
追问我不是用struts开发的,你这个不必导sturts吧
回答不用的,在import里面没有任何关于struts的内容。。

相关主题
文本预览
相关文档 最新文档