Java 处理域名中的特殊字符(无IDN)?
我正在使用URI类来分解字符串url getHost()方法中有特殊字符时返回null 例如: 。但是,该类仅在AndroidAPI级别9及以上(即2.3及以上)中可用 在没有IDN类的情况下,还有其他方法可以做到这一点吗 我希望能够将一个字符串url分解成不同的部分,并能够处理现代url 谢谢 更新看起来WebView也不支持这些类型的URL。所以,看起来我需要找到一种方法来支持或转换2.3版本之前的设备的URL 有没有一种方法可以在没有IDN类的情况下转换这些URL getHost()=从开始到://忽略所有内容,然后捕获所有内容,直到得到斜杠 这不管用吗?getHost()=从开始到://忽略所有内容,然后捕获所有内容,直到得到斜杠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方法,因为我认为它们是最安全的,但我想这至少对主机是管用的。@littleFluffyKitty:你可以通过对以下令牌应用相同的逻辑使它与其他段一起工作:
://
,:
,,,@
,/
,?
,&
,#
。谢谢,这样就可以了。但是,我更新了我的问题(它似乎没有足够的不同来保证一个单独的问题),因为它看起来确实需要一种方法来支持/转换这些字符。我想这会管用的,我尝试使用URI方法,因为我认为它们是最安全的,但我想这至少对主机有效。@Littleflufykitty:您可以通过对以下令牌应用相同的逻辑使其与其他段一起工作:://
,:
,@
,/
,?
,&
,,,,,,。,谢谢,这样就可以了。然而,我更新了我的问题(它似乎没有足够的不同,以保证一个单独的问题),因为它看起来确实需要一种方法来支持/转换这些字符。