问题描述
我有一个需要用户输入一些值的应用程序。 根据这些值生成一个URL。 但是,如果用户输入特殊符号,例如德语元音或其他奇怪的符号,则在尝试创建URL时会有例外。 所以我有两个问题:
检测URL是否为格式正确的URL的最佳方法是什么?
我应该如何将无效的URL转换为有效的URL? 我知道这可以解决问题,但是我想从无效的URL生成一个与原始URL尽可能相似的有效URL:例如,将修改为
1楼
我不确定您是否应该再这样做,因为现在可以使用本机字符注册域名,例如www.s?opaulo.com,这可能与www.saopaulo.com不同。 这对于俄语,中文等也有效。
2楼
Android Java运行时中的的行为非常类似于同名的Sun Java类。
如果网址格式MalformedURLException
则其构造函数将抛出MalformedURLException
。
3楼
我强烈建议你不要试图纠正(在我心中“猜”),用户输入的URL。 仅安全问题就是噩梦。 如果输入了无效的URL,则引发异常并进行相应的处理。