java通过url读取网络图片


使用java.net读取网络文件

 

import java.io.BufferedInputStream;  
 import java.io.FileOutputStream;  
 import java.io.IOException;  
 import java.net.HttpURLConnection;  
 import java.net.URL;  
  
 public class downimage {  
  
 public void saveToFile(String destUrl) {  
 FileOutputStream fos = null;  
 BufferedInputStream bis = null;  
 HttpURLConnection httpUrl = null;  
 URL url = null;  
 int BUFFER_SIZE = 1024;  
 byte[] buf = new byte[BUFFER_SIZE];  
 int size = 0;  
 try {  
 url = new URL(destUrl);  
 httpUrl = (HttpURLConnection) url.openConnection();  
 httpUrl.connect();  
 bis = new BufferedInputStream(httpUrl.getInputStream());  
 fos = new FileOutputStream("c:\\haha.gif");  
 while ((size = bis.read(buf)) != -1) {  
 fos.write(buf, 0, size);  
 }  
 fos.flush();  
 } catch (IOException e) {  
 } catch (ClassCastException e) {  
 } finally {  
 try {  
 fos.close();  
 bis.close();  
 httpUrl.disconnect();  
 } catch (IOException e) {  
 } catch (NullPointerException e) {  
 }  
 }  
 }  
 public static void main(String[] args) {  
 // TODO Auto-generated method stub  
  
 downimage dw=new downimage();  
 dw.saveToFile("http://10.81.36.193:8081/png.png");  
 }  
 }  

 

注意:

  如果路径或者源文件名称中包含特殊符号或者空格,会报505错误,此时需要对URL进行转码

  

  ftpUrl=ftpUrl.replaceAll("%", "%25");//先将地址本身带有的%转为%25
  ftpUrl=ftpUrl.replaceAll(" ", "%20");//再将空格转换为%20

转码之后读取正常。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM