首页 / JAVA / java实现从服务器下载文件的功能
java实现从服务器下载文件的功能
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java实现从服务器下载文件的功能,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2872字,纯文字阅读大概需要5分钟。
内容图文
![java实现从服务器下载文件的功能](/upload/InfoBanner/zyjiaocheng/832/e03362ff4dc34a0a899937ab2f1ef291.jpg)
@RequestMapping(value = "/fileDownload")
@ResponseBody
public String fileDownload(HttpServletRequest request, HttpServletResponse response) throws IOException {
String msg = "";
// 用来检测程序运行时间
long startTime = System.currentTimeMillis();
String filename = "/home/xxx.zip";
File file = new File(filename);
byte[] data = getFileByteArray(filename);
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String now = sdf.format(date);
try {
if (data == null) {
throw new FileNotFoundException("文件没有找到!");
}
String filename2 = "eclopppppp.zip";
response.setContentType("application/binary;charset=UTF-8");
response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(filename2, "UTF-8"));
response.setContentLength(data.length);
response.getOutputStream().write(data);
response.getOutputStream().flush();
response.getOutputStream().close();
msg = "download success!!!";
} catch (FileNotFoundException e) {
e.printStackTrace();
msg = "download fail!!!";
}
long endTime = System.currentTimeMillis();
System.out.println("下载的运行时间:" + String.valueOf(endTime - startTime) + "ms");
return msg;
}
/**
* 写入本地磁盘
*
* @param filename
* @param data
*/
public void createNewFile(String filename, byte[] data) {
File file = new File(filename);
OutputStream output = null;
try {
if (!file.exists())
file.createNewFile();
output = new FileOutputStream(file);
IOUtils.write(data, output);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (null != output) {
try {
output.close();
} catch (IOException e1) {
e1.printStackTrace();
}
output = null;
}
}
}
/**
* 下载文件
*
* @param filename
* @return
*/
public byte[] getFileByteArray(String filename) {
File file = new File(filename);
InputStream input = null;
byte[] data = null;
try {
if (!file.exists())
return null;
input = new FileInputStream(file);
data = IOUtils.toByteArray(input);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (null != input) {
try {
input.close();
} catch (IOException e1) {
e1.printStackTrace();
}
input = null;
}
}
return data;
}
内容总结
以上是互联网集市为您收集整理的java实现从服务器下载文件的功能全部内容,希望文章能够帮你解决java实现从服务器下载文件的功能所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。