在Java中,Java.net包里面的类是进行网络编程的,其中,java.net.URL类和java.net.URLConection类是编程者方便地利用URL在Internet上进行网络通信。有两种方法可以用来访问Internet。

一是使用URL类的openStream()方法:

openStream()方法与制定的URL建立连接并返回InputStream类的对象,以从这一连接中读取数据;

openStream()方法只能读取网络资源。

二是使用URL类的openConnection()方法:

openConnection()方法会创建一个URLConnection类的对象,此对象在本地机和URL指定的远程节点建立一条HTTP协议的数据通道,可进行双向数据传输。类URLConnection提供了很多设置和获取连接参数的方法,最常用到的是getInputStream()和getOutputStream()方法。

openConnection()方法既能读取又能发送数据。

下面通过两个例子分别介绍两种方法:

1.openStream()方法访问Internet

    下面的例子实现了访问http://www.baidu.com,获取其html代码:

public class URLTest2 {
public static void main(String args[]) throws Exception {
try {
URL url = new URL("http://www.baidu.com");
InputStream in =url.openStream();
InputStreamReader isr = new InputStreamReader(in);
BufferedReader bufr = new BufferedReader(isr);
String str;
while ((str = bufr.readLine()) != null) {
System.out.println(str);
}
bufr.close();
isr.close();
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

    上例首先创建对象url,并通过url.openStream()方法打开输入流获取InputStreamReader对象,再由此对象创建BufferedReader对象bufr,从bufr中读取数据即可得到url所指定的资源文件。

2.openConnection()方法访问Internet

   下面的例子实现了访问http://www.baidu.com,获取其html代码:

public class URLTest {
public static void main(String[] args) {
try {
URL url = new URL("http://www.baidu.com");
URLConnection URLconnection = url.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection) URLconnection;
int responseCode = httpConnection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
System.err.println("成功");
InputStream in = httpConnection.getInputStream();
InputStreamReader isr = new InputStreamReader(in);
BufferedReader bufr = new BufferedReader(isr);
String str;
while ((str = bufr.readLine()) != null) {
System.out.println(str);
}
bufr.close();
} else {
System.err.println("失败");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

   上例首先创建对象url,并通过url.openConnection()方法获取URLConnection对象,并转换成HttpURLConnection对象,再由此对象的getInputStream()方法打开输入流获取InputStreamReader对象,然后由此对象创建BufferedReader对象bufr,从bufr中读取数据即可得到url所指定的资源文件。

最新文章

  1. win10系统下连接无线网络掉线问题解决办法
  2. Android注解使用之使用Support Annotations注解优化代码
  3. 远程登录VirtualBox虚拟机Linux
  4. request response
  5. 【Other】Ubuntu 14.04 pptp 客户端连接配置
  6. 【jquery】:表单返回信息
  7. java(课程设计之记事本界面部分代码公布)
  8. 一句话改变TGraphicControl控件的left坐标的前世今生
  9. PS5穿越云层3D文字
  10. Linux - create usergroup, user and Assigning permissions
  11. winDbg 命令使用帮助
  12. 菲菲更名宝贝(批量更名软件) v8.0 绿色版
  13. Cobbler自动化部署最佳实践
  14. 学习笔记-express路径问题
  15. CentOS 7.6 使用kubeadm安装Kubernetes 13
  16. sql笔试题
  17. 二分法bug修复
  18. 原生js手动轮播图
  19. maven项目报错xxx cannot be resolved to a type
  20. git ssh免登陆,以及ssh config

热门文章

  1. ToString(string format)输出格式简述
  2. 矩阵中的路径 剑指offer65题
  3. IOS项目开发中的文件和文件夹操作
  4. hdu5795 A Simple Nim 求nim求法,打表找sg值规律 给定n堆石子,每堆有若干石子,两个人轮流操作,每次操作可以选择任意一堆取走任意个石子(不可以为空) 或者选择一堆,把它分成三堆,每堆不为空。求先手必胜,还是后手必胜。
  5. UVA - 11584 划分字符串的回文串子串; 简单dp
  6. OC 内存管理-01
  7. CentOS 6.5 Git源码安装
  8. jQuery + Cookie引导客户操作
  9. 图像sift配准后融合
  10. CAFFE学习笔记(五)用caffe跑自己的jpg数据