Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 处理域名中的特殊字符(无IDN)?_Java_Android_Url_Utf 8_Idn - Fatal编程技术网

Java 处理域名中的特殊字符(无IDN)?

Java 处理域名中的特殊字符(无IDN)?,java,android,url,utf-8,idn,Java,Android,Url,Utf 8,Idn,我正在使用URI类来分解字符串url getHost()方法中有特殊字符时返回null 例如: 。但是,该类仅在AndroidAPI级别9及以上(即2.3及以上)中可用 在没有IDN类的情况下,还有其他方法可以做到这一点吗 我希望能够将一个字符串url分解成不同的部分,并能够处理现代url 谢谢 更新看起来WebView也不支持这些类型的URL。所以,看起来我需要找到一种方法来支持或转换2.3版本之前的设备的URL 有没有一种方法可以在没有IDN类的情况下转换这些URL getHost()=从开

我正在使用URI类来分解字符串url

getHost()方法中有特殊字符时返回null

例如:

。但是,该类仅在AndroidAPI级别9及以上(即2.3及以上)中可用

在没有IDN类的情况下,还有其他方法可以做到这一点吗

我希望能够将一个字符串url分解成不同的部分,并能够处理现代url

谢谢

更新看起来WebView也不支持这些类型的URL。所以,看起来我需要找到一种方法来支持或转换2.3版本之前的设备的URL

有没有一种方法可以在没有IDN类的情况下转换这些URL

getHost()=从开始到://忽略所有内容,然后捕获所有内容,直到得到斜杠

这不管用吗?

getHost()=从开始到://忽略所有内容,然后捕获所有内容,直到得到斜杠


这不管用吗?

我想那会管用的,我试着使用URI方法,因为我认为它们是最安全的,但我想这至少对主机是管用的。@littleFluffyKitty:你可以通过对以下令牌应用相同的逻辑使它与其他段一起工作:
://
@
/
&
#
。谢谢,这样就可以了。但是,我更新了我的问题(它似乎没有足够的不同来保证一个单独的问题),因为它看起来确实需要一种方法来支持/转换这些字符。我想这会管用的,我尝试使用URI方法,因为我认为它们是最安全的,但我想这至少对主机有效。@Littleflufykitty:您可以通过对以下令牌应用相同的逻辑使其与其他段一起工作:
://
@
/
&
,谢谢,这样就可以了。然而,我更新了我的问题(它似乎没有足够的不同,以保证一个单独的问题),因为它看起来确实需要一种方法来支持/转换这些字符。