一、URL介绍
-
URL(Uniform Resource Locator) 统一资源定位符,表示Internet上某一资源的地址
-
组成: 协议名称 + 资源名称 中间用冒号隔开 http(协议名称)?/www.baidu.com(资源名称)
-
在Java.net包中, 提供了URL类
二、URL主要方法
构造方法
重要常用方法
三、方法实例
代码块
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37import java.net.MalformedURLException; import java.net.URL; /** * URL(Uniform Resource Locator) 统一资源定位符,表示Internet上某一资源的地址 * <p> * 组成: 协议名称 + 资源名称 中间用冒号隔开 http://www.baidu.com * <p> * 在Java.net包中, 提供了URL类 */ public class IUrl { public static void main(String[] args) { try { //创建一个URL 实例 URL baiDu = new URL("http://www.baidu.com"); //根据一个URL 生成一个新的URL, ?后面表示参数 # 表示瞄点 URL url = new URL(baiDu, "/index.html?username = tom#test"); System.out.println("协议:" + url.getProtocol()); System.out.println("主机:" + url.getHost()); //http默认的为80端口,如果未指定端口号,getPort返回值为-1 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(); } } }
四、通过URL读取网页内容
以百度页面为例
代码块
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; /** * * 通过URL读取网页内容 * * 1、通过URL对象的openStream()方法可以得到指定资源的输入流 * * * * 2、通过输入流可以读取,访问网络上的资源 */ public class UrlStream { public static void main(String[] args) { try { //创建一个URL实例 URL url = new URL("http://www.baidu.com"); //通过openStream 方法获取URL对象所表示的资源的字节输入流 InputStream inputStream = url.openStream(); // 将字节苏入流转换为字符输入流 InputStreamReader isr = new InputStreamReader(inputStream,"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(); inputStream.close(); } catch (java.io.IOException e) { e.printStackTrace(); } } }
最后
以上就是可耐御姐最近收集整理的关于Socket编程基础(三)——URL的全部内容,更多相关Socket编程基础(三)——URL内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复