XmlReader.ReadElementContentAsString()不读取换行符

时间:2013-01-23 06:09:22

标签: c# xml xml-parsing newline xmlreader

我正在开发一个计算器,可以将会话保存为XML文件。这是我的示例会话的样子:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<BreezyCalc Version="3.0">
    <Session>
        <Constants>
            <Constant Name="myconst1" Value="12.443" />
            <Constant Name="someconst" Value="0.12e+2" />
        </Constants>
        <Variables>
            <Variable Name="myvar" Value="40.32" />
            <Variable Name="myothervar" Value="2.5" />
        </Variables>
        <Functions>
            <Function Linear="true" Name="myfunc1" M="2.8" B="-7" />
            <Function Linear="true" Name="otherfunc" M="-1" B="14.32" />
        </Functions>
        <Output>1*2, 3*4, 5*6
        -> Ans1 = 2
        -> Ans2 = 7
        -> Ans3 = 30
        </Output>
        <Results>
            <Result Value="2" />
            <Result Value="7" />
            <Result Value="30" />
        </Results>
    </Session>
</BreezyCalc>

在我的应用程序中,输出显示在如下文本框中:

1*2, 3*4, 5*6
      -> Ans1 = 2
      -> Ans2 = 7
      -> Ans3 = 30

但是,当我使用XmlReader加载会话,并在ReadElementContentAsString()元素上使用<Output>时,输出会显示在文本框中,如下所示:

1*2, 3*4, 5*6      -> Ans1 = 2      -> Ans2 = 7      -> Ans3 = 30

当我从应用程序的文本框中复制该文本并将其粘贴到记事本中时,它看起来是一样的,仍然全部在一行上。 但是,当我尝试将其粘贴到StackOverflow的问题提交文本框中时,它会正确显示换行符。所以我不确定这是由XmlReader引起的,还是与文本框有关。我觉得好像它可能是文本框,因为就像我说的那样,我在这里粘贴了换行符,但我无法理解为什么文本框不会显示换行符。

基本上,我在问这里的问题是什么?如何从/向XML文件读取/写入多行文本并保留换行符?

0 个答案:

没有答案