Excel ファイルをユーザーに返送しようとしています。何らかの方法で、Excel ファイルが空であっても破損します。ファイルを開くと、Excel でファイルが破損していると表示されます。
私が削除した場合
response.getOutputStream().write(excelService.exportEventsToCSV());
空のExcelファイルを取得します。
@RequestMapping(value = "/events/excel", method = RequestMethod.GET)
public void getEventsAsExcel(HttpServletResponse response) {
try {
response.setHeader("Content-disposition", "attachment; filename=test.xls");
response.getOutputStream().write(excelService.exportEventsToCSV());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
私の XML 生成は非常に単純です。空のドキュメントのみ
@Override
public byte[] exportEventsToCSV() {
try {
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet worksheet = workbook.createSheet("POI Worksheet");
HSSFCellStyle cellStyle = workbook.createCellStyle();
workbook.write(fileOut);
return workbook.getBytes();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
アドバイスをお願いします。Springs Excel ビューを考えていましたが、ビューは必要ありません。ダウンロードしたファイルだけです。