http get 请求下载图片至本地

来源:互联网 发布:张艺兴发布会知乎 编辑:程序博客网 时间:2024/06/05 23:45
package com.koow.test;


import java.io.InputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;


public class http_get {

private static String URL_PATH = "http://files.jb51.net/image/ali_300.jpg"; 

public http_get(){

}

public static void saveImageToDisk(){
InputStream inputStream=getInputStream();
byte[] data=new byte[1024];
int len=0;
FileOutputStream fileoutputStream =null;
try{
fileoutputStream=new FileOutputStream("C:\\test.png");
while((len=inputStream.read(data))!=-1){
fileoutputStream.write(data,0,len);
}
}catch(IOException e){
e.printStackTrace();
}finally{
if(inputStream!=null){
try{
inputStream.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
}

/**
* 获取服务端的数据,以InputStream形式返回
* @return
*/
public static InputStream getInputStream(){
InputStream inputStream=null;
HttpURLConnection httpURLConnection=null;
try{
URL url=new URL(URL_PATH);
if(url!=null){
httpURLConnection =(HttpURLConnection)url.openConnection();
//设置连接网络超时时间
httpURLConnection.setConnectTimeout(3000);
httpURLConnection.setDoInput(true);
//表示设置本次http请求使用的GET方式请求
httpURLConnection.setRequestMethod("GET");
int responseCode=httpURLConnection.getResponseCode();
if(responseCode==200){
//从服务器中获得一个输入流
inputStream=httpURLConnection.getInputStream();
}
}
}catch(MalformedURLException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
return inputStream;
}

public static void main(String[] args){
//从服务器获得图片保存到本地
saveImageToDisk();
}
}
0 0
原创粉丝点击