首页 > 编程笔记 > Java笔记 阅读:2

Java URLConnection类的用法(附带实例)

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

应用程序和 URL 要建立一个连接通常需要以下几个步骤:
URLConnection 类的提供了丰富的变量和方法用于操作URL连接,下面给出一些常用的变量和方法。

Java URLConnection类的主要变量

1) connected:该变量表示 URL 的连接状态。true 表示已经建立了通信连接。false 表示此连接对象尚未创建到指定 URL 的通信连接。

2) url:该变量表示此连接要在互联网上打开的远程对象。

URLConnection类的构造方法

URLConnection(URL url):创建参数为 url 的 URLConnection 对象。

URLConnection类的主要方法

方法名称 描述
Object getContent() 获取此URL连接的内容。
String getContentEncoding() 返回该URL引用资源的内容编码。
int getContentLength() 返回此连接的URL引用资源的内容长度。
String getContentType() 返回该URL引用资源的内容类型。
URL getURL() 返回此URLConnection的URL字段的值。
InputStream getInputStream() 返回从所打开连接读数据的输入流。
OutputStream getOutputStream() 返回向所打开连接写数据的输出流。
public void setConnectTimeout(int timeout) 设置一个指定的超时值(毫秒为单位)。

下面通过一个案例来演示 URLConnection 的使用方法。使用 URLConnection 显示网页“http://www.baidu.com/index.htm”相关信息:
import java.io.*;
import java.net.URL;
import java.net.URLConnection;
public class URLConnectionTest {
    public static void main(String[] args) throws Exception {
        int ch; // 定义接收连接内容信息的整数
        URL url = new URL("http://www.baidu.com/index.htm"); // 创建URL对象
        // 定义URLConnection对象,并让其指向给定的连接
        URLConnection uc = url.openConnection();
        System.out.println("文件类型:" + uc.getContentType());
        System.out.println("文件长度:" + uc.getContentLength());
        System.out.println("文件内容:");
        System.out.println("-------------------------------------");
        // 定义字节输入流对象,并使其指向给定连接的输入流
        InputStream is = uc.getInputStream(); // 创建BufferedReader 对象
        while ((ch = is.read()) != -1) { // 循环读下一个字符,直到文件结束
            System.out.print((char) ch); // 输出字节对应的字符
        }
        is.close(); // 关闭字节流
    }
}
程序运行结果为:

文件类型: text/html
文件长度: 2381
文件内容:
<!DOCTYPE html>
<!----STATUS OK--><html> <head><meta http-equiv=content-type content="text/html; charset=utf-8"><meta http-equiv=X-UA-Compatible ...

相关文章