2024年9月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
無料ブログはココログ

 

« 今週届いたもの | トップページ | 株:現物買い約定(乾汽船) »

2011年3月20日 (日)

覚書:Java URLクラスに設定したURLはどうやって取る?

URLクラスに設定したURLの取り方が分からなかったので、実際に動かしてみた。

import java.net.MalformedURLException;
import java.net.URL;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Main {

    public static void main(String[] args) {
        // TODO code application logic here
        URL url;
        try {
            url = new URL("https://boo.foo.com:8080/test1/TEST.html?s=1&v=2");

            System.out.println("Authority:" + url.getAuthority());
            System.out.println("DefaultPort:" + Integer.toString(url.getDefaultPort()));
            System.out.println("File:" + url.getFile());
            System.out.println("Host:" + url.getHost());
            System.out.println("Path:" + url.getPath());
            System.out.println("Protocol:" + url.getProtocol());
            System.out.println("Query:" + url.getQuery());
            System.out.println("Ref:" + url.getRef());
            System.out.println("UserInfo:" + url.getUserInfo());
            System.out.println("toExternalForm:"+url.toExternalForm());
            System.out.println("toString:" + url.toString());
        } catch (MalformedURLException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

結果は以下

Authority:boo.foo.com:8080
DefaultPort:443
File:/test1/TEST.html?s=1&v=2
Host:boo.foo.com
Path:/test1/TEST.html
Protocol:https
Query:s=1&v=2
Ref:null
UserInfo:null
toExternalForm:https://boo.foo.com:8080/test1/TEST.html?s=1&v=2
toString:https://boo.foo.com:8080/test1/TEST.html?s=1&v=2

なるほどURLを丸ごと取得するには、toExternalForm()かtoString()か。
あ、Java URLクラスの説明にあるか。
両方とも「ストリームプロトコルハンドラの toExternalFormメソッドを呼び出すことによって文字列が作成されます」とかいてあるわ。

« 今週届いたもの | トップページ | 株:現物買い約定(乾汽船) »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 覚書:Java URLクラスに設定したURLはどうやって取る?:

« 今週届いたもの | トップページ | 株:現物買い約定(乾汽船) »