这是我在文本文件中的URL。当我的应用程序读入文件并将其转换为字符串时,最终会添加奇怪的字符。
在:
<p><a href="http://www.w3schools.com" target="iframe_a">W3Schools.com</a></p>
后:
"%3Cp%3E%3Ca%20href%3D%22http%3A//www.w3schools.com%22%20target%3D%22iframe_a%22%3EW3Schools.com%3C/a%3E%3C/p%3E"
我知道这可能是一个编码错误,我的问题是它为什么会发生并且仅限于URL?我怎么能阻止它在Java和iOS中这样做呢。
答案 0 :(得分:0)
您发布的字符串不是网址,而是包含网址的HTML。
您不能将HTML视为有效的网址,因为它不是。
答案 1 :(得分:0)
正如@Duncan_C所说:你的网址周围有HTML代码。您可以使用Jsoup library来摆脱它。完成后,它将正确编码。
以下是如何做到这一点:
String html = "<p><a href=\"http://www.w3schools.com\" target=\"iframe_a\">W3Schools.com</a></p>";
Document doc = Jsoup.parse(html);
Element link = doc.select("a").first();
String url = link.attr("href");
System.out.println(url);