【问题标题】:Is CDATA supposed to be URL-encoded?CDATA 应该是 URL 编码的吗?
【发布时间】:2011-04-26 17:06:56
【问题描述】:

显然答案是否定的……对吧?我问的原因是因为我在 XML 中为 Android 应用程序定义了这个字符串:

<string name="foo"><![CDATA[<html><body><p>This%20is%20a%20test</p></body></html>]]></string>

我对字符串所做的只是读取它,并在 HTML 视图中显示。我会期望%20s 被解释,但他们是。这是正确的行为,还是 Android 通常存在错误?

【问题讨论】:

  • 你在用这个字符串做什么?仅仅从 DOM 中读取它当然不应该对它进行 URL 解码。如果您将字符串传递给查询参数或其他东西,当然......
  • 啊在文档中找到了答案(令人惊讶!):developer.android.com/reference/android/webkit/WebView.html loadData(... String data ...) : "A String of data in the given encoding. 日期必须是 URI -转义 -- '#'、'%'、'\'、'?'应分别替换为 %23、%25、%27、%3f”。多么奇怪。

标签: html android xml urlencode cdata


【解决方案1】:

CDATA 应该是 URL 编码的吗?

No。 CDATA 的唯一规则是它不能包含关闭 CDATA ]]&gt; - 其他一切都是公平的游戏。

【讨论】:

    猜你喜欢
    • 2010-11-26
    • 2014-08-12
    • 2018-08-18
    • 2011-09-30
    • 2016-09-09
    • 2011-03-19
    • 2011-11-18
    • 2011-05-31
    相关资源
    最近更新 更多