加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xml – 什么时候到CDATA vs. Escape和Vice Versa?

发布时间:2020-12-16 07:52:44 所属栏目:百科 来源:网络整理
导读:我正在使用从数据库获取的值创建 XML文档.有时候由于遗留的实现,我会撤销一个包含char的值,如果没有正确地转义( amp;),则该字符无效. 那么问题就变成了,应该是CDATA还是Escape?某些情况是否适合一对一? 例子: Emailfoobar@domain.com/Email 我在这里倾向
我正在使用从数据库获取的值创建 XML文档.有时候由于遗留的实现,我会撤销一个包含char的值,如果没有正确地转义(& amp;),则该字符无效.

那么问题就变成了,应该是CDATA还是Escape?某些情况是否适合一对一?

例子:

<Email>foo&bar@domain.com</Email>

我在这里倾向于CDATA.

<Name>Bob & Tom</Name>

我会倾向于逃离这里.

我想避免盲目地CDATA的每一次,但从性能的角度看,这似乎是合乎逻辑的选择.这将总是比寻找无效的char更快,如果它存在然后换行.

思考?

CDATA主要用于IMO的可读性.就机器而言,CDATA和转义文本之间的距离最大不同于长度.也许逃脱的版本需要一点时间才能处理,但是我也许会说,因为除非你的应用程序主要是IO绑定,否则这不应该是一个重要的因素.

人们有可能正在阅读XML吗?如果没有,只需让XML解析器做它所做的,不用担心CDATA vs转义文本.如果人们会阅读这个XML,那么也许CDATA可以是更好的选择.

如果你有一个XML元素的值是XML,那么在这种情况下,CDATA可能是更好的选择.

有关更多信息,请参阅XML常见问题的问题When should I use a CDATA Marked Section?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读