【问题标题】:XmlSerializer replaces spaces with 0x0020 (the hex value)XmlSerializer 将空格替换为 0x0020(十六进制值)
【发布时间】:2011-03-27 15:37:32
【问题描述】:

由于某种原因,我的带有空格的 XmlElements 被打印为 _x0020 代替空格。

例如,

[XmlElement("The Total")]
public double total { get; set; }

当我打印出来时变成<The_0x0020_Total>。我使用 TextWriter 进行输出,然后使用 XmlSerializer.Serialize 打印到文件,但它不起作用。

【问题讨论】:

    标签: c# hex xmlserializer


    【解决方案1】:

    这是 XML 序列化程序处理您指定了非法元素名称这一事实的方式。 XML 元素的名称中不能包含空格,因此它会以一种稍后可以取消空格的方式来处理空格。

    我建议您首先不要包含空格。

    出于兴趣,您期望输出是什么?您是否期望:

    <The Total>
      20
    </The Total>
    

    ?

    【讨论】:

    • 是的,这就是我想要的。如果这不符合标准 XML,那么我只需要知道这些。
    猜你喜欢
    • 2018-07-16
    • 1970-01-01
    • 2014-02-05
    • 2011-08-04
    • 2018-01-22
    • 2010-10-15
    • 2016-08-07
    • 2019-08-04
    相关资源
    最近更新 更多