该接口为普通的java文件下载接口,正常来说下载的内容应该与原版txt内相同。
@RequestMapping(value = "newdownload")
public ResponseEntity<byte[]> newdownload() throws Exception {
//文件位置:tomcat下bin目录里的文件
String path = System.getProperty("user.dir") + "/FileTemplate.txt";
File file = new File(path);
HttpHeaders headers = new HttpHeaders();
String filename = new String("FileTemplate.txt".getBytes("UTF-8"), "iso-8859-1");//为了解决中文名称乱码问题
headers.setContentDispositionFormData("attachment", filename);
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
return new ResponseEntity<byte[]>(org.apache.commons.io.FileUtils.readFileToByteArray(file), headers, HttpStatus.OK);
}
源文件内容应为:
但实际下载后查看内容为:
原因有可能是转换编码出现问题,但在不同的demo尝试,发现下载的内容有不同,有的是与原内容相同。猜测会不会是配置文件的问题。