我可以轻松导航第二个链接,但是当我尝试导航第一个链接时,我指向了错误的网址。这是代码:
StringBuilder footerBuffer = new StringBuilder();
footerBuffer.append("<b>Init:</b> http://127.0.0.1:8080/ABC/init/library?bookId=173&auth=1568&delta=yes <br/>");
footerBuffer.append("<b>Home:</b> https://127.0.0.1:8443/ABC <br/>");
footer.setText(Html.fromHtml(footerBuffer.toString()));
我指向第一个网址的网址是:
http://127.0.0.1:8080/ABC/init/library?bookId=173&auth=1568%CE%B4=yes
尽管有%CE%B4
,但我看到&delta
。可能是什么问题?
答案 0 :(得分:1)
δ
是HTML特殊字符(如&
等) - 我相信&amp; delta会转换为delta字符的url编码。您可以尝试使用%26(这是&amp;的url编码值)而不是delta参数的&符号。
答案 1 :(得分:1)
由于δ
是δ
的字符引用名称,请参阅http://www.whatwg.org/specs/web-apps/current-work/multipage/named-character-references.html#entity-delta。
您应该使用Html.escapeHtml()
或其他任何内容转义字符。 Html.escapeHtml()
要求API级别16或更高级别。如果您想在较低的API级别上工作,请参阅Apache Commons Lang。