构建无效 XML 文档(名称不能以“0”字符开头)

Building not valid XML Document (Name cannot begin with the '0' character)

我正在尝试在 C# 中解码自定义 xml 配置文件,但我无法从解码步骤后获得的字符串创建此文件。

尝试构建 xml 后,我收到此错误:

System.Xml.XmlException : 'Name cannot begin with the '0' character, hexadecimal value 0x30. Line 1, position 2.'

我知道我的 xml 不是有效的 xml 文件,因为它的格式不正确,但我想知道是否有办法构建它。

“xml 文件”的格式:

<01_config.xml>
  <name dataType="String">some_name</name>
  <description dataType="String">some_description</description>
</01_config.xml>

如果我在调试期间将 01_config.xml 替换为 config,一切都会正常工作,因为它将成为一个有效的 xml 文件。但它不是我的配置的好格式。

我想我仍然可以在不使用 C# Xml 构建工具的情况下构建文件,但我想知道是否可以首先使用它来构建文件。

我知道我的 xml 不是有效的 xml 文件,因为它的格式不正确,但我想知道是否有办法构建它。

当然,您可以构建格式不正确的文件 XML,但是您将无法使用 XML 工具读取它们。

XML 组件(元素和属性)名称不能以数字开头。

严格来说,这是 XML 文档的规则问题 – well-formedness, not validity.

更正此错误的原因

  1. 您希望您的文档是 XML。
  2. 您希望您文档的用户能够使用 XML 编辑器、解析器、验证器、数据库、transformation/selection 语言和以多种语言提供的库的生态系统。
  3. 您想要使用标准的互操作性优势。
  4. 您想加入用户社区 – 挖掘集体知识并为社区的互惠互利做出贡献。

继续处理错误“XML”的原因

  1. 您喜欢“XML”变体的美学,因为它“适合我的配置”的格式。

推荐

修正错误并使用标准XML。

另见