大家好,又见面了,我是你们的朋友全栈君。
//获取文件路径并创建一个出入流
String filePath=”文件实际路径”;
FileInputStream fis = new FileInputStream(filePath);
//创建输出流,向客户端输出数据
ServletOutputStream sos = response.getOutputStream();
//获取文件名
String fileName = filePath.substring(filePath.lastIndexOf(‘\\’) + 1);
//文件名转码
fileName = URLEncoder.encode(fileName, “UTF-8”);
//告诉客户端以什么解码方式打开文件
//response.setContentType(“UTF-8”);
//告诉客户端下载文件
if (request.getHeader(“User-Agent”).toLowerCase().indexOf(“firefox”) > -1)
{
response.setHeader(“Content-Disposition”, “attachment; filename*=UTF-8”” + fileName);
System.out.println(“firefox”);
} else {
response.setHeader(“content-disposition”, “attachment; filename=” + fileName);
}
//response.setHeader(“content-disposition”, “attachment; filename=” + fileName);
//response.setHeader(“content-type”, “img/jpeg”);
//输出
byte[] buf = new byte[1024];
int len = -1;
while((len = fis.read(buf)) != -1) {
sos.write(buf, 0, len);
}
//关流
sos.close();
fis.close();
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157171.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...