描述
Java URLConnection getContent()方法获取此 URL 连接的内容。
声明
以下是java.net.URLConnection.getContent(Class<?>[] classes) 方法的声明
public Object getContent(Class<?>[] classes) throws IOException
参数
classes − 指示请求类型的 Class 数组
返回值
获取的对象,该对象是类数组中指定类型的第一个匹配项。如果不支持所请求的类型,则为 null。应该使用instanceof运算符来确定返回的对象的具体类型。
异常
IOException - 如果在获取内容时发生I/O错误.
UnknownServiceException - 如果协议不支持内容类型。
示例 1
以下示例显示了Java URLConnection getContent(Class<?>[] classes)) 方法,用于使用 https 协议的有效 url。在此示例中,我们将创建 URL 类的实例。使用 url.openConnection() 方法,我们获取 URLConnection 实例。使用 getContent(),我们获取网站主页的内容并打印相应的内容 -
package com.yxjc123;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class UrlConnectionDemo {
public static void main(String [] args) {
try {
URL url = new URL("https://www.yxjc123.com/index.htm?language=en#j2se");
URLConnection urlConnection = url.openConnection();
Class<?>[] classes = {InputStream.class};
BufferedReader in = new BufferedReader(
new InputStreamReader((InputStream) urlConnection.getContent(classes)));
String content = "";
String current;
while((current = in.readLine()) != null) {
content += current;
}
System.out.println(content);
} catch (IOException e) {
e.printStackTrace();
}
}
}
让我们编译并运行上面的程序,这将产生以下结果 -
输出
<!DOCTYPE html><html lang="en"><head> <title>Online Tutorials, Courses, and eBooks ....</body></html>
示例 2
以下示例显示使用 Java URLConnection getContent() 方法获取具有 http 协议的有效 url。在此示例中,我们将创建 URL 类的实例。使用 url.openConnection() 方法,我们获取 URLConnection 实例。使用 getContent(),我们获取网站主页的内容并打印相应的内容 -
package com.yxjc123;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class UrlConnectionDemo {
public static void main(String [] args) {
try {
URL url = new URL("http://www.yxjc123.com/index.htm?language=en#j2se");
URLConnection urlConnection = url.openConnection();
Class<?>[] classes = {InputStream.class};
BufferedReader in = new BufferedReader(
new InputStreamReader((InputStream) urlConnection.getContent(classes)));
String content = "";
String current;
while((current = in.readLine()) != null) {
content += current;
}
System.out.println(content);
} catch (IOException e) {
e.printStackTrace();
}
}
}
让我们编译并运行上面的程序,这将产生以下结果 -
输出
<!DOCTYPE html><html lang="en"><head> <title>Online Tutorials, Courses, and eBooks ....</body></html>
示例 3
以下示例展示了使用 Java URLConnection getContent() 方法获取具有 http 协议的 baidu 有效 url。在此示例中,我们将创建 URL 类的实例。使用 url.openConnection() 方法,我们获取 URLConnection 实例。使用 getContent(),我们获取网站主页的内容并打印相应的内容 -
package com.yxjc123;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class UrlConnectionDemo {
public static void main(String [] args) {
try {
URL url = new URL("http://www.baidu.com");
URLConnection urlConnection = url.openConnection();
Class<?>[] classes = {InputStream.class};
BufferedReader in = new BufferedReader(
new InputStreamReader((InputStream) urlConnection.getContent(classes)));
String content = "";
String current;
while((current = in.readLine()) != null) {
content += current;
}
System.out.println(content);
} catch (IOException e) {
e.printStackTrace();
}
}
}
让我们编译并运行上面的程序,这将产生以下结果 -
输出
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" ....</body></html>