【Java Socket】入门系列 2.2.Java网络相关API — URL的应用

来源:互联网 发布:猎流网店优化是真假 编辑:程序博客网 时间:2024/06/07 10:21

URL的简介

  1. URL(Uniform Resource Locator)统一资源定位符号,表示Internet上某一资源的地址
  2. URL由两部分组成(二者之间由 冒号 隔开)
    • 协议名称
    • 资源名称
  3. 在java.net包中,提供了URL类表示URL

    代码Demo

public MURL() throws MalformedURLException {    /**     * 构建一个URL实例     */    //构造方法一 URL(String)    URL imooc = new URL("http://www.imooc.com");    //?后面表示参数,#后面表示锚点    URL url = new URL(imooc,"/index.html?username=tom#test");    //获得网站使用的协议    System.out.println("协议:    "+url.getProtocol());    System.out.println("主机:    "+url.getHost());    //如果为指定端口号。则使用默认端口号(80),此时getPort()方法返回值为 -1    System.out.println("端口:    "+url.getPort());    //    System.out.println("相对路径:    "+url.getRef());    System.out.println("查询字符串:    "+url.getQuery());}

使用URL读取网页内容

  1. 通过URL对象的openStream()方法可以得到指定的资源的输入流。
  2. 通过输入流可以读取,访问网络的数据。
/**     * 使用URL读取页面内容     * @param args     * @throws IOException      */    public static void main(String[] args) throws IOException {        // TODO Auto-generated method stub        //1.创建一个URL实例         URL url = new URL ("http://www.baidu.com");        //2. 通过URL的openStream()方法获取URL对象所表示的资源的【字节】输入流        InputStream is = url.openStream();        //3.将字节输入流转换为字符输入流        InputStreamReader isr = new InputStreamReader(is,"utf-8");        //4.将字符输入添加缓冲        BufferedReader br = new BufferedReader(isr);        String date = br.readLine();        while(date != null)        {            System.out.println(date);            date = br.readLine();        }        br.close();        isr.close();        is.close();    }
0 0
原创粉丝点击