2012-10-04 21 views
22

Çok basit bir sorudur. Ancak, Java belgelerinde bir cevap bulamıyorum ve böyle bir yöntemin var olup olmadığını bilmiyorum çünkü bunu test edemiyorum.Dize Oluşturma

Ben

http://www.example1.com

veya

http://www.example1.com/

olabilecek bir URL dize alabilirsiniz ve sonra ben /api/v1/status.xml ile başlayabilir kaynak yolunu almak olacak ya da api/v1/status.xml gibi olurdu

e bakıyordumsınıfı ve ilk bölümü ele alabilirim, yani bir HTTPS veya HTTP isteği yapmak için hostURL'yi getirebilirim. Sorun kaynak yolunu eklemektir. ya ilk harf / ise veya el ile kontrol etmeliyim. Bu işlevin bir sınıfta olup olmadığını merak ediyordum.

+0

bu benzer mi Ne arıyorsun? Yararlı olabilir: https://stackoverflow.com/questions/1861620/is-there-a-java-package-to-handle-building-urls – MikeB

cevap

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

size 2 URL'ler oluşturmak isteyeyim yüzden bu yapıcı sadece, etki sonuna ne olursa olsun kaynak ekler javadocs göre:

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

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

+1

URL URL'si = yeni URL (domain +) dosyaları/kaynağı .xml ");'? MalformedURL? ... ne alan = www.example.com/'ve' yeni URL (domain + "/files/resources.xml"); '... yine hatalı biçimlendirilmiş –

+0

Bir uygulamanın ilk çekler olduğu birçok kez gördüm "if (domain.endsWith ("/")) {domain = domain.substring (0, domain.length() - 1);}' 'URL dizgisi diğer tüm sorunlar için MalformedURLException komutunu yakalayın ve buradan işlem yapın. –

+0

Sadece protokol "http" olmadığı için MalformedURLException alıyorum. Java.net.URI kullanarak OMG/facepalm –