Unicode字符,如XML中的\ u0016

时间:2011-12-13 06:54:50

标签: xml unicode

有没有办法在XML中处理像\ u0016这样的unicode字符?根据我的理解,在XMLDocument中加载这些字符会引发无效的十六进制字符错误。我尝试过其他unicode角色。他们似乎工作得很好。只有控制字符才会导致此错误。我们可以在不实际解析XML的情况下删除这些字符吗?

2 个答案:

答案 0 :(得分:23)

  

使用Unicode标准中使用的符号表示字符,即使用至少4位数字(例如U+1234U+10FFFD)的可选U +后跟其十六进制数字。在XML或HTML中,这可以表示为ሴ􏿽

来自Unicode Technical Report

XML中的有效字符:

  

Char :: =#x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]

来自Extensible Markup Language (XML) 1.0 (Fifth Edition)

答案 1 :(得分:2)

您不能直接在XML中使用控制字符。如果您需要将二进制数据存储在XML文件中,您可以Base 64对其进行编码。这样你就可以存储图像......