2012-10-04 7 views
22

これは非常に基本的な質問です。しかし、私はJavaのドキュメントで答えを見つけることができず、私はそのようなメソッドが存在するかどうかわからないので、同様にそれをテストすることができません。文字列からURLを作成する

私は

http://www.example1.com

または

http://www.example1.com/

可能性がURLの文字列を受け取るかもしれませんし、私は/api/v1/status.xmlで始まる可能性があるか、それはapi/v1/status.xmlようになるリソースパスを取得します

私はを見ていました最初の部分を処理できます。つまり、hostURLを取得してHTTPSまたはHTTPリクエストにすることができます。問題はリソースパスを追加することです。最初の文字が/であるかどうかを手動で確認する必要があります。私はこの機能がすでにいくつかのクラスに入っているのかどうか疑問に思っていました。

+0

がに似たこのですがあなたは何を探していますか?それは役に立つかもしれません:https://stackoverflow.com/questions/1861620/is-there-a-java-package-to-handle-building-urls – MikeB

答えて

35
URL url = new URL(yourUrl, "/api/v1/status.xml"); 

あなたは2つのURLを作成したいと思うので、Javadocには、このコンストラクタはただ、自分のドメインの最後にどんなリソースを追加します:

URL domain = new URL("http://example.com"); 
URL url = new URL(domain + "/files/resource.xml"); 

出典:http://docs.oracle.com/javase/6/docs/api/java/net/URL.html

+1

'URL url =新しいURL(ドメイン+"ファイル/リソース.xml ");'? MalformedURL? ...もし 'domain = www.example.com /'と '新しいURL(domain +" /files/resources.xml ");' ...もう一度不正な形式になったら –

+0

私はアプリケーションが最初にチェックする場所を何度も見てきました他のすべての問題については、MalformedURLExceptionをキャッチしてそこから処理してください(この場合、 –

+0

プロトコルが「http」ではないので、私はMalformedURLExceptionを取得しています。 OMG/facepalm –

関連する問題