Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤和異常

Java 多執行緒

Java 同步

Java 網路

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 雜項

Java API 和框架

Java 類參考

Java 有用資源

Java - URL 類



什麼是 URL?

URL 代表統一資源定位符,表示 全球資訊網 上的資源,例如 網頁 或 FTP 目錄。

本節將向您展示如何編寫與 URL 通訊的 Java 程式。URL 可以分解成以下幾個部分:

protocol://host:port/path?query#ref

協議示例包括 HTTP、HTTPS、FTP 和檔案。路徑也稱為檔名,主機也稱為許可權。

示例

以下是協議為 HTTP 的網頁的 URL:

https://www.amrood.com/index.htm?language=en#j2se

請注意,此 URL 未指定埠,在這種情況下,將使用協議的預設埠。對於 HTTP,預設埠為 80。

Java URL 類

URL 類是 java.net 包的一部分。URL 類表示統一資源定位符 (URL)。其中,URL 用於識別線上資源(例如:網頁、網頁中使用的影像、影片、檔案等)。

URL 類提供了幾個建構函式和方法來建立、解析和操作 URL(或 URL 物件)。

URL 類宣告

public final class URL
   extends Object
      implements Serializable

URL 類建構函式

java.net.URL 類表示一個 URL,並有一套完整的用於在 Java 中操作 URL 的方法。

URL 類有幾個用於建立 URL 的建構函式,包括以下內容:

序號 建構函式和描述
1

public URL(String protocol, String host, int port, String file) throws MalformedURLException

透過組合給定的部分建立一個 URL。

2

public URL(String protocol, String host, int port, String file, URLStreamHandler handler) throws MalformedURLException

透過組合給定的部分以及在指定上下文中指定的處理程式來建立一個 URL。

3

public URL(String protocol, String host, String file) throws MalformedURLException

與上一個建構函式相同,只是使用了給定協議的預設埠。

4

public URL(String url) throws MalformedURLException

從給定的字串建立一個 URL。

5

public URL(URL context, String url) throws MalformedURLException

透過解析 URL 和字串引數組合建立一個 URL。

6

public URL(URL context, String url, URLStreamHandler handler) throws MalformedURLException

透過解析 URL 和字串引數以及在指定上下文中指定的處理程式來建立一個 URL。

URL 類方法

URL 類包含許多用於訪問所表示的 URL 的各個部分的方法。URL 類中的一些方法包括以下內容:

序號 方法和描述
1

public equals(Object obj)

此方法比較此 URL 與另一個物件的相等性。

2

public String getAuthority()

此方法返回 URL 的許可權。

3

public Object getContent()

此方法返回此 URL 的內容。

4

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

此方法返回此 URL 的內容。

5

public int getDefaultPort()

此方法返回 URL 協議的預設埠。

6

public String getFile()

此方法返回 URL 的檔名。

7

public String getHost()

此方法返回 URL 的主機。

8

public String getPath()

此方法返回 URL 的路徑。

9

public int getPort()

此方法返回 URL 的埠。

10

public String getProtocol()

此方法返回 URL 的協議。

11

public String getQuery()

此方法返回 URL 的查詢部分。

12

public String getRef()

此方法返回 URL 的引用部分。

13

public String getUserInfo()

此方法返回 URL 的 userInfo 部分。

14

public int hashCode()

此方法建立並返回一個適合雜湊表索引的整數。

15

public URLConnection openConnection()

此方法返回一個 URLConnection 例項,該例項表示與 URL 引用的遠端物件的連線。

16

public URLConnection openConnection(Proxy proxy)

此方法的作用與 openConnection() 相同,只是連線將透過指定的代理進行;不支援代理的協議處理程式將忽略代理引數並建立正常連線。

17

public InputStream openStream()

此方法開啟到此 URL 的連線,並返回一個 InputStream 用於讀取該連線。

18

public boolean sameFile(URL other)

此方法比較兩個 URL,不包括片段元件。

19

public static void setURLStreamHandlerFactory(URLStreamHandlerFactory fac)

此方法設定應用程式的 URLStreamHandlerFactory。

20

public String toExternalForm()

此方法構造並返回此 URL 的字串表示形式。

21

public String toString()

此方法構造並返回此 URL 的字串表示形式。

22

public String toURI()

此方法返回與此 URL 等效的 URI。

  • java.lang.Object

URL 類的示例

以下 URLDemo 程式演示了 URL 的各個部分。在命令列上輸入 URL,URLDemo 程式輸出給定 URL 的每個部分。

// File Name : URLDemo.java
import java.io.IOException;
import java.net.URL;

public class URLDemo {

   public static void main(String [] args) {
      try {
         URL url = new URL("https://tutorialspoint.tw/index.htm?language=en#j2se");
         
         System.out.println("URL is " + url.toString());
         System.out.println("protocol is " + url.getProtocol());
         System.out.println("authority is " + url.getAuthority());
         System.out.println("file name is " + url.getFile());
         System.out.println("host is " + url.getHost());
         System.out.println("path is " + url.getPath());
         System.out.println("port is " + url.getPort());
         System.out.println("default port is " + url.getDefaultPort());
         System.out.println("query is " + url.getQuery());
         System.out.println("ref is " + url.getRef());
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

此程式的示例執行將產生以下結果:

輸出

URL is https://tutorialspoint.tw/index.htm?language=en#j2se
protocol is https
authority is www.tutorialspoint.com
file name is /index.htm?language=en
host is www.tutorialspoint.com
path is /index.htm
port is -1
default port is 443
query is language=en
ref is j2se
廣告

© . All rights reserved.