我需要将一些XML元素发送到其他一些服务,我想确保我的XML文件格式优雅,以便其他人可以使用他们的XML解析器来解析XML文件。
对于这类XML文件,它的格式是否优雅,违反了XML的任何规则?不确定&#x4是否是.Net / C#中的有效XML字符序列?
我很担心字符串是否以$#x开头都有效?如果不是所有这些都有效,有什么方法可以过滤掉它们吗?
我正在使用VSTS 2008 + C#+ .Net 3.5。
<?xml version="1.0" encoding="utf-8"?>
<Text></Text>
答案 0 :(得分:7)
没有。字符引用必须以分号终止。
更新:鉴于问题中的语法错误已得到纠正,请参阅http://www.w3.org/TR/xml/#dt-charref以获取可接受的值的说明。
坦率地说,除了“,&lt;,&gt;和&amp;之外,我坚持使用UTF-8。它使XML本身更具可读性。
答案 1 :(得分:5)
使用XML Validator。它显示以下错误:
错误:字符引用必须以';'结尾分隔符。
答案 2 :(得分:2)
正如其他人所建议的,缺少一个分号,并使用验证器。但请注意,即使输入格式在技术上没问题,并非所有字符都是合法的。
以下文档如果验证者失败:
<?xml version="1.0" encoding="utf-8"?>
<Text></Text>
这个确实证实了:
<?xml version="1.0" encoding="utf-8"?>
<Text>2</Text>
有关要使用或避免使用的字符的信息,请this seems interesting。