2009-07-23 3 views

Antwort

11

Sie finden Verwendung haben die Methoden zur Verfügung:

URL oldUrl = new URL("https://www.bla.com"); 
URL newUrl = new URL("http", oldUrl.getHost(), oldUrl.getPort(), oldUrl.getFile(), oldUrl.getRef()); 

eine noch expansivere Set Es gibt() -Methode, die 8 Artikel nimmt, könnte man, dass aufwendige URLs für mehr benötigen.

Edit: Wie gerade auf mich hingewiesen wurde, habe ich nicht aufgepasst, und set() ist geschützt. Also URL ist technisch veränderbar, aber für uns Sterbliche ist es unveränderlich. Sie müssen also nur ein neues URL-Objekt erstellen.

+0

Die 'set()' Methode geschützt ist. – notnoop

+0

Ah Nüsse. Vielen Dank. – skaffman

+3

sieht so aus, als hätten Sie die Parameter der Methode URL.set() für den Konstruktor genommen, aber es existiert kein solcher Konstruktor mit diesem Prototyp. – muttonUp

1

Sie können auch String-Ersatz verwenden:

URL oldUrl = new URL("https://www.bla.com"); 
String newUrlString = oldUrl.toString().replaceFirst("^https", "http"); 
URL newUrl = new URL(newUrlString); 
Verwandte Themen