HttpURLConnection连接影像平台下载文件到服务器
因工作需要实现从影像平台下载pdf文件到服务器上,并实现前端能查看,故记录一下HttpURLConnection使用案例。
package com.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import org.omg.CORBA.portable.InputStream;
public class UrlHttp {
public static void main(String args[]) {
String s1="https://g.csdnimg.cn/static/logo/favicon32.ico";
String folder="D:\\test.ico";
int fileSize = saveYxImage(url,folder);
}
//读取url文件保存到folder下并返回文件大小
public static int saveYxImage(String url,String folder){
int fileSize = 0;
try {
//实例化一个URL对象
URL url = new URL(url);
//用于创建HttpURLConnection
HttpURLConnection connect = (HttpURLConnection) url.openConnection();
//设置为GET方式请求数据
connect.setRequestMethod("GET");
//设置3秒的响应超时
connect.setConnectTimeout(6000);
//获取连接,连接响应码为200,表示连接成功
connect.connect();
int code=connect.getResponseCode();
if(code ==200) {
//获取服务端返回的数据流
java.io.InputStream in = connect.getInputStream();
FileOutputStream fos = new FileOutputStream(new File(folder));
byte bytes[] =new byte[1*1024];
int readSize =-1;
while((readSize = in.read(bytes))!=-1){
//写入文件
fos.write(bytes, 0, readSize);
fileSize +=bytes.length;
}
//关闭流
fos.close();
in.close();
}
} catch (IOException e) {
e.printStackTrace();
}
return fileSize;
}
}