我有以下控制器下载Excel文件。该文件被下载,但当我打开它时,我得到“该文件已损坏,无法打开。”我在控制器中做错了什么?春天下载excel文件
@ApiOperation(value = "export ontology")
@RequestMapping(value = "/export/{ontologyId}", method = RequestMethod.GET)
public ResponseEntity<InputStreamResource> exportExcel(@PathVariable Long ontologyId) throws FileNotFoundException {
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Description", "File Transfer");
headers.add("Content-Disposition", "attachment; filename=pfizer_polish_ontology.xlsx");
headers.add("Content-Transfer-Encoding", "binary");
headers.add("Connection", "Keep-Alive");
headers.setContentType(
MediaType.parseMediaType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"));
File file = new File("C:\\ttt\\pfizer_polish_ontology.xlsx");
InputStreamResource isr = new InputStreamResource(new FileInputStream(file));
return ResponseEntity.ok().contentLength(file.length()).headers(headers).body(isr);
}
我想也许添加一个重要的细节 我使用扬鞭接口休息的API
使用邮差(保存和下载),我是能够下载文件,它是很好的。所以,看来问题只能用招摇接口
简单,也许愚蠢的观察。 ..是文件C:\\ ttt \\ pfizer_polish_ontology.xlsx好吗?这个文件可能是损坏的,所以下载的文件被破坏? –
该文件适用于100%。我刚打开它从主力位置没有问题 –
只是想你的代码,一切按预期工作,无论是在火狐(54.0.1)和Chrome(60.0.3112.113)。希望你的问题解决了。 – lzagkaretos