从文件服务器下载图片文件
public void downLoadImages(String imagePath,String imageName,Integer picType){
List<String> suffixList = Arrays.asList(Constants.FILETYPE_DOWNLOAD_IMG);
String suffix = imagePath.substring(imagePath.lastIndexOf(".") + 1);
String pngsuffix = ".png";
String svgsuffix = ".svg";
if(imagePath!=""&&!imagePath.equals(null)){
BufferedInputStream in = null;
BufferedOutputStream out = null;
try {
URL url = new URL(imagePath);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5 * 1000);
conn.setRequestMethod("GET");
conn.setRequestProperty(
"Accept", "image/gif, image/jpeg, image/pjpeg, image/pjpeg, "
+ "application/x-shockwave-flash, application/xaml+xml, "
+ "application/vnd.ms-xpsdocument, application/x-ms-xbap, "
+ "application/x-ms-application, application/vnd.ms-excel, "
+ "application/vnd.ms-powerpoint, application/msword, */*");
conn.setRequestProperty("Accept-Language", "zh-CN");
conn.setRequestProperty("Charset", "UTF-8");
InputStream inStream = conn.getInputStream();
if (suffixList.contains(suffix)) {// 文件格式不对
if(picType==1){
imageName += pngsuffix;
response.setContentType("application/x-png");
}else{
imageName +=svgsuffix;
response.setContentType("text/xml");
}
}
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-Disposition", "attachment; filename="+new String(imageName.getBytes("gbk"),"iso-8859-1"));
in = new BufferedInputStream(inStream);
out = new BufferedOutputStream(response.getOutputStream());
byte[] data = new byte[1024];
int len = 0;
while (-1 != (len=in.read(data, 0, data.length))) {
out.write(data, 0, len);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if (in != null) {
in.close();
}
if (out != null) {
out.flush();
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}