本文仅仅为了记录问题和解决办法,原文链接:https://www.cnblogs.com/rumengqiang/p/11156267.html
需求如题目所说,已知下载的链接url,和要保存的路径,将文件保存到指定的路径下:
/**
* 通过url,下载文件到指定目录下
* @param fileUrl 下载路径
* @param savePath 存放地址 --路径后要加上文件名,亲自踩的坑。。
* @throws Exception
*/
public static void downloadFile(String fileUrl,String savePath) throws Exception {
File file=new File(savePath);
//判断文件是否存在,不存在则创建文件
if(!file.exists()){
file.createNewFile();
}
URL url = new URL(fileUrl);
HttpURLConnection urlCon = (HttpURLConnection) url.openConnection();
urlCon.setConnectTimeout(6000);
urlCon.setReadTimeout(6000);
int code = urlCon.getResponseCode();
if (code != HttpURLConnection.HTTP_OK) {
throw new Exception("文件读取失败");
}
DataInputStream in = new DataInputStream(urlCon.getInputStream());
DataOutputStream out = new DataOutputStream(new FileOutputStream(savePath));
byte[] buffer = new byte[2048];
int count = 0;
while ((count = in.read(buffer)) > 0) {
out.write(buffer, 0, count);
}
try {
if(out!=null) {
out.close();
}
if(in!=null) {
in.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception {
downloadFile("https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1595837300&di=16e8607ef6994112c458d3998ee553c6&src=http://a0.att.hudong.com/56/12/01300000164151121576126282411.jpg","C:\\Users\\SID\\Desktop\\test\\pic.jpg");
}
代码中的链接为在网上下载的图片路径,运行成功后,可以在文件夹下面看到测试的文件
大功告成!