2012-02-08 58 views
1

我想查一個URL地址的有效性,所以經過一番研究,我發現,使用apache.commons.validator.UrlValidator類是一個很好的解決方案,以做到這一點,這是代碼的例子:Android不承認org.apache.commons.validator

import org.apache.commons.validator.UrlValidator; 

    public class ValidateUrlExample{ 

public static void main(String[] args) { 

    UrlValidator urlValidator = new UrlValidator(); 

    //valid URL 
    if (urlValidator.isValid("http://www.mkyong.com")) { 
     System.out.println("url is valid"); 
    } else { 
     System.out.println("url is invalid"); 
    } 

    //invalid URL 
    if (urlValidator.isValid("http://invalidURL^$&%$&^")) { 
     System.out.println("url is valid"); 
    } else { 
     System.out.println("url is invalid"); 
    } 

} 
} 

但是Android不承認階級「org.apache.commons.validator」 有誰知道應該怎樣做才能解決這個問題?

在此先感謝

+0

FYI如果你使用'新的URL( 「putyoururlhere」)'用無效的URL,它拋出一個'MalformedURLException' - 也許你可以使用它。在http://developer.android.com/reference/java/net/URL.html#URL(java.lang.String更多信息) – ccheneson 2012-02-08 17:20:41

+0

我會接受你的解決方案考慮,謝謝 – 2012-02-08 17:23:20

+0

我想你的解決方案,我測試它與這個字符串就是這樣:myurl =新的URL(「:putyoururlhere」),但它沒有把我的MalformedURLException的,但它投擲器我java.lang.StringIndexOutOfBoundsException和強制關閉應用程序 – 2012-02-08 18:38:56

回答

1

如果你仍然想使用Apache Commons驗證庫,那麼你只需要下載the library,並與您的應用程序打包。

+0

謝謝你,但是,我需要知道我是否應該下載二進制文件或源文件?還有在哪裏打包它在我的應用程序?感謝您的時間 – 2012-02-08 18:17:19

+0

下載二進制文件並提取commons-validator-1.4.0.jar文件。如何將庫添加到您的應用程序的詳細信息,可以發現[這裏](http://developer.android.com/resources/faq/commontasks.html#addexternallibrary)。而不是說: – 2012-02-08 18:36:57

+0

OK再次感謝 – 2012-02-08 18:42:43

7

您可以使用該方法isValidUrl()android.webkit.URLUtil定義。 例如

if (!URLUtil.isValidUrl("yourUrl") 
    // do something 
+0

@Martin:如果你的編輯可以儘可能地'安靜',通常是最好的;例如,我將該URL內嵌到該方法的第一個引用中。 – sarnold 2012-03-15 02:03:53