URI.getHost()具有特殊字符

时间:2019-09-17 11:10:32

标签: java utf-8 uri

我正在尝试获取当前网址的域名

案例:özgür.com,我认为由于特殊字符代码会引发异常,解决此问题的正确方法是什么?

private static String getDomainName(String url) throws Exception {
    if(!url.contains("http")){
        url = "http://" + url;
    }

    URI uri = new URI(url);
    String domain = uri.getHost();

    return domain.startsWith("www.") ? domain.substring(4) : domain;
}

uri.getHost()返回null;方法抛出NullPointerException。

1 个答案:

答案 0 :(得分:2)

如何用URL替换URI? URL uri = new URL (url);