poi导出excel 损坏 |
您所在的位置:网站首页 › excel打开文件错误:数据可能丢失 › poi导出excel 损坏 |
展开全部 两个原因: 1.你的excel模版本身有问题,可以尝试新建一个模版。 2.你的excel使用了一e68a8462616964757a686964616f31333365643662些POI不支持的函数。 解决办法: 另存是由excel重写了完整的文件,可以解决问题。 关闭文件例子: FileOutputStream os = new FileOutputStream("workbook.xls"); wb.write(os); os.close(); 在保护状态下execl的格式有可能正在被使用,你这边修改,准确说是线程冲突,一般excel值会作为导出文件的模板,是不会编辑的。你可以在读的时候判断execl是否正在被使用。 下面的代码问题,你可以参考 package com.hwt.glmf.common; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletResponse; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFFont; import org.apache.poi.hssf.usermodel.HSSFRichTextString; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.CellRangeAddress; import org.apache.poi.hssf.util.HSSFColor; /** * 导出Excel公共方法 * @version 1.0 * * @author wangcp * */ public class ExportExcel extends BaseAction { //显示的导出表的标题 private String title; //导出表的列名 private String[] rowName ; private List dataList = new ArrayList(); HttpServletResponse response; //构造方法,传入要导出的数据 public ExportExcel( |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |