我正在使用 apache poi 使用 java 创建一个简单的 xlsx 文件,如下所示
String date = "2014/12/29";
XSSFWorkbook w = ADPFidessa.createExcelWorkbook(date);
response.reset();
response.setContentType("application/xlsx");
response.setHeader("Content-Disposition", "attachment;filename=ADP_Fidessa.xlsx");
w.write(response.getOutputStream());
这是 createExcelWorkbook 方法
public static XSSFWorkbook createExcelWorkbook(String sBsnsDt) throws Exception
{
// create a new file
FileOutputStream out = new FileOutputStream("workbook.xlsx");
// create a new workbook
XSSFWorkbook wb = new XSSFWorkbook();
// create a new sheet
XSSFSheet s = wb.createSheet("Sheet1");
// declare a row object reference
XSSFRow r;
// declare a cell object reference
XSSFCell c;
ArrayList<ADPFidessa> aDADPFidessalist=null;
ADPFidessaDAO adpfiddao = new ADPFidessaDAO();
aDADPFidessalist=adpfiddao.showADPFid(sBsnsDt);
int rownum;
// header row and columns
r = s.createRow(0);
c = r.createCell(0);
c.setCellValue("Business Date");
c = r.createCell(1);
c.setCellValue("ID");
c = r.createCell(2);
c.setCellValue("Ant");
c = r.createCell(3);
c.setCellValue("Sol");
c = r.createCell(4);
c.setCellValue("itions");
c = r.createCell(5);
c.setCellValue(sition");
c = r.createCell(6);
c.setCellValue("ffere");
c = r.createCell(7);
c.setCellValue("Age");
rownum = 1;
for (ADPFidessa di : aDADPFidessalist)
{
r = s.createRow(rownum);
c = r.createCell(0);
c.setCellValue(di.getBusinessDate());
c = r.createCell(1);
c.setCellValue(di.getkId());
c = r.createCell(2);
c.setCellValue(di.getAnt());
c = r.createCell(3);
c.setCellValue(di.getSol());
c = r.createCell(4);
c.setCellValue(di.getition());
c = r.createCell(5);
c.setCellValue(di.getsition());
c = r.createCell(6);
c.setCellValue(di.getffere());
c = r.createCell(7);
c.setCellValue(di.getAge());
rownum++;
}
try {
wb.write(out);
out.close();
} catch (Exception e) {
System.out.println("Error");
System.out.println(e);
}
return wb;
}
方法 showADPFid(sBsnsDt);返回正确的值并且输出文件被正确保存。问题就在这里。当我尝试在 MS Excel 中打开该文件时,它显示一条错误消息
现在,单击“是”后,Excel 文件将打开,所有数据均按预期显示。但是,出现另一个对话框
日志文件显示
任何人都可以提供有关此错误的任何想法吗?如何解决这个问题?
thanks
编辑:另外,这是我的进口
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.xssf.util.*;
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)