一個直接的方法來檢查URL的有效性,是簡單地處理MalformedURLException
例外:如何最優地檢查URL的有效性
try {
URL base = new URL(SomeString);
}
catch (MalformedURLException e) {
e.printStackTrace();
// handles this in some way
}
但據我所知,用異常來實現程序邏輯概念不正確的(也許還有更多代價高昂的運行時性能)。
另一方面,我不知道一個Java方法,它的確如此isValid(String url)
。
是否有更好的方法來檢查的URL字符串有效性沒有實例化一個URL對象(和處理的MalformedURLException
)?
[如何檢查Java中的有效URL?](http://stackoverflow.com/questions/2230676/how-to-check-for-a-valid-url-in-java)可能有重複。請注意,沒有得到MalformedURLException並不能保證URL是有效的。 – Grodriguez
@Grodriguez很好!但接受的答案是不可接受的......請參閱下面的性能考慮。 –
值得注意的是,hibernate的UrlValidator(org.hibernate.validator.constraints.impl)只是捕獲異常以確定有效性。 – smp7d