URL熟悉吧就是网址啊 我曹,统一资源定位符,表示Internet上某一资源的的地址
URL这类在java.net包中
用代码说话
package com.daqsoft.thread.inetaddress; import java.net.MalformedURLException; import java.net.URL; /** * Created by yanbo on 2017/6/8. * URL常用方法 */ public class Text { public static void main(String[] args) { try { //创建一个URL实例 URL imooc = new URL("http://www.imooc.com"); /** * 更具一个url创建新的URL实例 */ URL url = new URL(imooc, "/index.html?username=tom#test"); System.out.println("协议信息:"+url.getProtocol()); System.out.println("主机信息:"+url.getHost()); //如果未指定端口号则使用默认的端口号,此时getPort()方法返回值为-1(http默认为80) System.out.println("端口信息:"+url.getPort()); System.out.println("文件路径:"+url.getPath()); System.out.println("文件名称:"+url.getFile());//文件名=文件路径+参数 System.out.println("相对路径:"+url.getRef());//就是锚点#号后面的内容 System.out.println("查询字符串:"+url.getQuery());//参数 } catch (MalformedURLException e) { e.printStackTrace(); } } }结果
代码
package com.daqsoft.thread.inetaddress; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; /** * Created by yanbo on 2017/6/8. * URL读取网页内容 */ public class Text { public static void main(String[] args) { try { URL url = new URL("http://www.baidu.com");//创建一个URL实例 InputStream is= url.openStream();//通过URL的openStream方法获取URL对象所表示的资源的字节输入流 InputStreamReader isr = new InputStreamReader(is);//将字节输入流装换为字符输入流这里可以指定字符集编码(is,"utf-8") BufferedReader br = new BufferedReader(isr);//为字符流添加缓冲提高读取效率 String data = br.readLine();//一次读取一行 while (data !=null){//循环读取数据 System.out.println(data);//输出数据 data = br.readLine(); } br.close(); isr.close(); is.close(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }结果
会出现网页的以堆代码 ,