String资源xml中的URL

时间:2012-11-12 09:51:26

标签: android string url encoding resources

我在strings.xml文件中存储了几个网址。我想存储它们而不对它们进行编码(作为原始文本),但strings.xml会引发=&的错误。

例如:

http://www.example.org/index.php?p=616687&ac=some_q

如果按原样存储链接,则会抛出错误:

The reference to entity "ac" must end with the ';' delimiter.

但是,如果我将&替换为%26

http://www.example.org/index.php?p=616687%26ac=some_q

虽然这没有任何错误,但这不会在浏览器中打开正确的页面。

我有没有办法将链接存储在strings.xml中,因为它没有格式化或uri编码?

2 个答案:

答案 0 :(得分:1)

您无法直接使用&,因为XML文档应为well-formed,问题在于&字符本身。对于XML / HTML,您必须使用&实体(或&),但要使用网址URL encoding并将&替换为%26(就像您一样)这应该只是工作,因为浏览器确实理解他们只需要的东西。

答案 1 :(得分:0)

您可以使用http://developer.android.com/reference/android/util/Base64.html

对您的网址字符串进行Base64编码和解码