以下是我的示例代码。我使用eclipse,tomcat服务器.Browser作为IE9。
protected void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
ServletContext context = request.getServletContext();
@SuppressWarnings("unchecked")
List<Student> students = (List<Student>) context.getAttribute("students");
PrintWriter out = response.getWriter();
for(Student student:students){
out.println(student.getId()+"\t"+student.getName());
}
out.close();
}我正在拿学生名单。但是当我打开下载的文件时,得到的错误提示文件格式或扩展名无效。我下载的文件是.xlsx。
发布于 2014-09-11 16:59:03
我强烈建议您使用HSSFWorkbook类来创建您的excel文件。创建后(有关创建过程,请参阅:this example),您可以将其内容写入响应,如下所示:
Workbook workbook = new XSSFWorkbook();
// Add sheet(s), colums, cells and its contents to your workbook here ...
// First set response headers
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=YourFilename.xlsx");
// Get response outputStream
ServletOutputStream outputStream = response.getOutputStream();
// Write workbook data to outputstream
workbook.write(outputStream);https://stackoverflow.com/questions/25782961
复制相似问题