Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java APIs 和框架

Java 类引用

Java 有用资源

Java - URL getContent(Class<?>[] classes) 方法



描述

Java URL getContent(Class<?>[] classes) 方法返回此 URL 的内容。此方法是…的简写。

openConnection().getContent(classes)

声明

以下是 java.net.URL.getContent() 方法的声明

public final Object getContent(Class<?>[] classes)

参数

classes − Java 类型数组

返回值

此 URL 的内容,即 classes 数组中指定的类型的第一个匹配项。如果不支持任何请求的类型,则返回 null。

异常

IOException − 如果发生 I/O 异常。

示例 1

以下示例演示了针对有效 url 使用 Java URL getContent(Class<?>[] classes) 方法。在此示例中,我们创建 URL 类的实例。现在使用 getContent() 方法,我们获取内容并打印其类型。

package com.tutorialspoint;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https","www.tutorialspoint.com","/index.htm");
         Class<?>[] classes = {InputStream.class};
         Object content = url.getContent(classes);
         System.out.println(content);
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@6df97b55

示例 2

以下示例演示了针对无效 url 使用 Java URL getContent(Class<?>[] classes) 方法。在此示例中,我们创建 URL 类的实例。现在使用 getContent() 方法,我们尝试获取内容,并引发并打印异常。

package com.tutorialspoint;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https","www.tutorialspoint.com","index.htm");
         Class<?>[] classes = {InputStream.class};
         Object content = url.getContent(classes);
         System.out.println(content);
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

java.io.IOException: Server returned HTTP response code: 400 for URL: https://tutorialspoint.org.cnindex.htm
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
	at java.net.URLConnection.getContent(Unknown Source)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getContent(Unknown Source)
	at java.net.URL.getContent(Unknown Source)
	at com.tutorialspoint.UrlDemo.main(UrlDemo.java:10)

示例 3

以下示例演示了针对有效 url 使用 Java URL getContent(Class<?>[] classes) 方法。在此示例中,我们使用协议、主机和文件名创建 URL 类的实例。现在使用 getContent() 方法,我们获取内容并打印其类型,然后使用 openConnection() 方法,我们获取内容长度并在输出中打印它,如下所示:

package com.tutorialspoint;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

public class UrlDemo {
   public static void main(String [] args) {
      try {
         URL url = new URL("https","www.tutorialspoint.com","/index.htm");
         Class<?>[] classes = {InputStream.class};
         Object content = url.getContent(classes);
         System.out.println(content.getClass());
         System.out.println(url.openConnection().getContentLength());
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

让我们编译并运行上述程序,这将产生以下结果:

输出

class sun.net.www.protocol.http.HttpURLConnection$HttpInputStream
293637
java_url.htm
广告