java下载服务器图片_Java如何从服务器中下载图片

本文实例为大家分享了java服务器中下载图片的方法,供大家参考,具体内容如下

import java.io.ioexception;

import java.io.inputstream;

import java.io.outputstream;

import java.net.url;

import java.net.urlconnection;

import org.apache.commons.io.ioutils;

/**

* 从服务器中下载图片

*

* @param filename 图片地址

* @param response

* @return

*/

@requestmapping(value = "/download")

public void downloadmedia(httpservletresponse response, httpservletrequest request) {

inputstream inputstream = null;

outputstream outputstream = null;

try {

//处理中文乱码

request.setcharacterencoding("utf-8");

string filename = request.getparameter("filename");

filename = new string(filename.getbytes("iso8859-1"),"utf-8");

//处理浏览器兼容

response.setcontenttype("application/msexcel;charset=utf-8");//定义输出类型

enumeration enumeration = request.getheaders("user-agent");

string browsername = (string) enumeration.nextelement();

boolean ismsie = browsername.contains("msie");

if (ismsie) {

response.addheader("content-disposition", "attachment;filename=" + urlencoder.encode(filename, "utf8"));

} else {

response.addheader("content-disposition", "attachment;filename=" + new string(filename.getbytes("gb2312"), "iso8859-1"));

}

//url地址如果存在空格,会导致报错! 解决方法为:用+或者%20代替url参数中的空格。

filename = filename.replace(" ", "%20");

//图片下载

url url = new url(filename);

urlconnection conn = url.openconnection();

outputstream = response.getoutputstream();

inputstream = conn.getinputstream();

ioutils.copy(inputstream, outputstream);

} catch (ioexception e) {

system.err.println(e);

}finally {

ioutils.closequietly(inputstream);

ioutils.closequietly(outputstream);

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助。

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值