[code]String fileName = fullPath.substring(fullPath.lastIndexOf("\\") + 1);
FileInputStream file = new FileInputStream(fullPath);
ServletOutputStream out = response.getOutputStream();
//response.setContentType("application/octet-stream");
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment;filename="+ fileName);
byte buffer[] = new byte[1024];
int size;
while ((size = file.read(buffer)) != -1) {
out.println(new String(buffer));
out.write(buffer, 0, size);
//控制台打印出的内容与文件内容一致
System.out.println(new String(buffer));
}
file.close();
out.close();[/code]
页面通过一个按钮链接到以上代码,但保存下来的文件内容是按钮所在的页面的代码???
FileInputStream file = new FileInputStream(fullPath);
ServletOutputStream out = response.getOutputStream();
//response.setContentType("application/octet-stream");
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment;filename="+ fileName);
byte buffer[] = new byte[1024];
int size;
while ((size = file.read(buffer)) != -1) {
out.println(new String(buffer));
out.write(buffer, 0, size);
//控制台打印出的内容与文件内容一致
System.out.println(new String(buffer));
}
file.close();
out.close();[/code]
页面通过一个按钮链接到以上代码,但保存下来的文件内容是按钮所在的页面的代码???
本文探讨了一个使用Java实现文件下载功能时遇到的问题:通过按钮触发文件下载时,下载的文件内容竟然是按钮所在页面的HTML代码而非预期的实际文件内容。文章深入分析了问题原因,并给出了可能的解决方案。

859

被折叠的 条评论
为什么被折叠?



