在 Java 中,从 URL 连接读取/写入的关键步骤是什么?

javaobject oriented programmingprogramming更新于 2024/8/26 13:18:00

java.net 包中的 URL 类表示统一资源定位器,用于指向万维网上的资源(文件、目录或引用)。

此类提供各种构造函数,其中一个接受 String 参数并构造 URL 类的对象。

此类的 openStream() 方法打开与当前对象所表示的 URL 的连接并返回一个 InputStream 对象,您可以使用该对象从 URL 读取数据。

因此,要从网页读取数据(使用 URL 类)−

  • 通过将所需网页的 URL 作为参数传递给其构造函数来实例化 java.net.URL 类。

  • 调用openStream() 方法并检索 InputStream 对象。

  • 通过将上面检索到的 InputStream 对象作为参数传递来实例化 Scanner 类。

示例

import java.io.IOException;
import java.net.URL;
import java.util.Scanner;
public class ReadingWebPage {
   public static void main(String args[]) throws IOException {
      //实例化 URL 类
      URL url = new URL("http://www.something.com/");
      //检索指定页面的内容
      Scanner sc = new Scanner(url.openStream());
      //实例化 StringBuffer 类以保存结果
      StringBuffer sb = new StringBuffer();
      while(sc.hasNext()) {
         sb.append(sc.next());
         //System.out.println(sc.next());
      }
      //从 String Buffer 对象中检索字符串
      String result = sb.toString();
      System.out.println(result);
      //删除 HTML 标签
      result = result.replaceAll("<[^>]*>", "");
      System.out.println("Contents of the web page: "+result);
   }
}

输出

<html><body><h1>Itworks!</h1></body></html>
Contents of the web page: Itworks!

相关文章