色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java uri和url

錢衛國1年前8瀏覽0評論

Java中的URI和URL是兩種常用的表示資源的格式,但它們又有所區別。

URI(Uniform Resource Identifier,統一資源標識符)是一個字符串序列,用于標識互聯網上的資源。它的語法包括了scheme、authority、path、query、fragment等組成部分。其中,scheme指定了訪問資源所使用的協議,如http、ftp等;authority指定了訪問資源所用的服務器地址和端口號;path指定了資源在服務器上的位置;query指定查詢字符串,用于向服務器提交參數;fragment指定了資源在文檔中的位置,如HTML文檔中的錨點。

URI uri = new URI("http://www.example.com/path/to/resource?key=value#fragment");
String scheme = uri.getScheme(); //"http"
String host = uri.getHost(); //"www.example.com"
int port = uri.getPort(); //-1
String path = uri.getPath(); //"/path/to/resource"
String query = uri.getQuery(); //"key=value"
String fragment = uri.getFragment(); //"fragment"

URL(Uniform Resource Locator,統一資源定位器)是一種URI的子類,它在表示一個Web資源時,包括了網絡傳輸協議、服務器地址、端口號、資源路徑等信息。與URI不同,URL還提供了用于打開連接、讀取內容的方法,因此可以作為I/O操作的源或目標。

URL url = new URL("http://www.example.com/path/to/resource?key=value#fragment");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.connect();
InputStream is = conn.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
conn.disconnect();

需要注意的是,URL和URI的區別并不是很明顯,有時甚至可以相互替代。如果只是表示一個資源標識符,那么使用URI就足夠了;如果需要進行網絡傳輸、I/O操作,那么就需要使用URL。