java url编程_java URL编程

一、URL编程技术

URL是统一资源定位器的缩写,它是指向互联网“资源”的指针。URL表示了Internet上某个资源的地址。URL支持http,file,ftp等 多种协议。通过URL标识,可以直接使用通信协议获取远端计算机上的资源信息,方便快捷的开发Internet应用程序。

java.net 包中的URL类是对统一资源定位符的抽象,使用URL创建对象的应用程序称为客户端程序,一个URL对象存放着一个具体的资源的引用,表明客户要访问这个 URL中的资源,利用URL对象可以获取URL中的资源。一个URL对象通常包含最基本的三部分信息:协议、地址、资源。协议必须是URL对象所在的 JVM支持的协议,常用的协议如:HTTP、FTP等都是JVM支持的协议,地址必须是能连接的有效的IP地址或域名地址,资源可以是主机上的任何一个文 件。

URL代码实现:

1 /**

2 * 使用URL直接读取或写入网络上的数据3 * 2016/5/64 **/

5 packageorg.net;6

7 importjava.io.BufferedReader;8 importjava.io.IOException;9 importjava.io.InputStreamReader;10 import java.net.*;11

12 public classNetTest_1 {13 public static void main(String[] args) throwsException {14 //String str = "http://www.imooc.com";

15 URL imooc = new URL("http://www.imooc.com");16 //#号后面表示锚点

17 URL url = new URL(imooc,"/index.html?username = tom#test");18 System.out.println("protocol(协议):" +url.getProtocol());19 System.out.println("host(主机): " +url.getPort());20 //如果没有制定端口号,则使用默认的端口号 此时getPort()方法的返回值为-1

21 System.out.println("port(端口): " +url.getPort());22 System.out.println("path(路径): " +url.getPath());23 System.out.println("file(文件): " +url.getFile());24 System.out.println("Ret(文件类型): " +url.getRef());25 System.out.println("DefaultPort(默认端口): " +url.getDefaultPort());26 System.out.println("query(用户): " +url.getQuery());27 System.out.println("content(内容): " +url.getContent());28 }29 }

结果:

protocol(协议):http

host(主机): -1

port(端口): -1

path(路径): /index.html

file(文件): /index.html?username = tom

Ret(文件类型): test

DefaultPort(默认端口): 80

query(用户): username = tom

content(内容): sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@5c647e05

UPLConnection类

URLConnection用于应用程序和URL之间的连接,应用程序通过URLConection可以获得URL对象的相关信息,它是所有URL连接通信类的父类。该类的对象可以用来读写URL对象所表示的Internet上的数据。

代码实现:

1 /**

2 * 读取Internet上的数据3 * 2016/5/64 **/

5 packageorg.net;6 import java.io.*;7 import java.net.*;8

9 public classNetTest_2 {10 static intch;11 public static void main(String[] args) throwsException {12 URL url = new URL("http://www.imooc.com");13 URLConnection uc =url.openConnection();14 System.out.println("文件类型: "+uc.getContentType());15 System.out.println("文件长度: "+uc.getContentLength());16 System.out.println("文件内容:");17 System.out.println("###############################");18 InputStream is =uc.getInputStream();19 while((ch = is.read()) != -1){20 System.out.print((char)ch);21 }22 is.close();23 }24 }

结果展示:

文件类型: text/html; charset=utf-8

文件长度: -1

文件内容:

###############################

æ课ç½-å½åæ大çITæè½å­¦ä¹ å¹³å°

.............(后边比较长,不再显示)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值