2012-02-08 63 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