新手网络编程之URL下载网络资源

网络编程之URL下载网络资源

定义

什么是URL?统一资源定位符(Uniform Resource Locator),它的英文简称叫做URL。也被称为网页地址,是因特网上标准的资源的地址。它最初是由蒂姆·伯纳斯-李发明用来作为万维网的地址的,现在它已经被万维网联盟编制为因特网标准RFC1738了。(来自百度知道)

简单地说,URL就是统一资源定位器,用来定位地址的,定位的是互联网上的某一个资源。URL通常用于网页的地址,这种地址会在浏览器顶部附近的Location或者URL框内显示出来。鼠标指针移至某个超链接上方时, URL也会在屏幕的底部显示出来。例如:我的电脑(Windows10的此电脑)中的文件路径(举例:C:\Users\Administrator\Desktop)、或者浏览器中我们常说的网址(举例:https: // zhidao.baidu.com /)都可以称作URL。(URL地址目的地可以是某个文件名、目录名或者某台计算机的名称)

平时听到URL,把它简单地理解成是域名即可。

说到URL,一定会想到URI,URI 是统一资源标识符,而 URL 是统一资源定位符。因此,笼统地说,每个 URL 都是 URI,但不一定每个 URI 都是 URL。

URL的格式

协议://IP地址:端口/项目名/资源

示例

使用URL来下载网络上的资源非常容易,甚至可以下载某些无法直接在网络上下载的文件,但是既然有了url,很多时候直接在浏览器中输入就可以完成下载或者保存需要的文件。所以这里的示例仅供学习网络编程之用

package URL;

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

public class UrlDown {
   public static void main(String[] args) throws IOException {
       //下载地址
       URL url = new URL("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1592111374681&di=439e15b1665dceba2ace8f85b1fa7ea0&imgtype=0&src=http%3A%2F%2Fpic.51yuansu.com%2Fpic3%2Fcover%2F01%2F91%2F85%2F59826e7646ab6_610.jpg");

       //连接这个资源
       HttpURLConnection urlConnection = ( HttpURLConnection)url.openConnection();

       InputStream inputStream = urlConnection.getInputStream();

       //输出这个文件
       FileOutputStream fos = new FileOutputStream("earth.jpg");

       byte[] buffer = new byte[2014];
       int len;
       while ((len=inputStream.read(buffer))!=-1){
           fos.write(buffer,0,len);

      }
       fos.close();
       inputStream.close();
       urlConnection.disconnect(); //断开连接

  }
}

代码中的图片url为百度中随机搜索的地球图片,可以真实下载到。下载到本地的文件名为:earth.jpg

posted @ 2020-06-14 11:11  HaydenWong211  阅读(225)  评论(0编辑  收藏  举报