java下载文件_java下载文件到本地[通俗易懂]

java下载文件_java下载文件到本地[通俗易懂]//获取文件路径并创建一个出入流StringfilePath=”文件实际路径”;FileInputStreamfis=newFileInputStream(filePath);//创建输出流,向客户端输出数据ServletOutputStreamsos=response.getOutputStream();//获取文件名StringfileName=filePath.subs…

大家好,又见面了,我是你们的朋友全栈君。

//获取文件路径并创建一个出入流

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账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号