保留\ r \n在XElement.Load上

Mal*_*olm 2 c#

有没有办法可以保留\ r \n在XElement.Load()上.

  TextReader reader = new StringReader(rawInputString);//rawInputString is just text in html format
    XElement root = XElement.Load(reader);
Run Code Online (Sandbox Code Playgroud)

编辑:

string  rawInputString =  "<Html><Body><p></p> \r\n <p></p>\r\n \r\n \r\n </Body></Html>";
Run Code Online (Sandbox Code Playgroud)

在XELement.Load之后,当我做root.ToString()时,我想要的输出是相同的:

"<Html><Body><p></p> \r\n <p></p>\r\n \r\n \r\n </Body></Html>"
Run Code Online (Sandbox Code Playgroud)

现在它只是清理/删除\ r \n

Sve*_*ven 6

这应该做的伎俩:

XElement root = XmlElement.Load(reader, LoadOptions.PreserveWhitespace);
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请查看本文:在加载或解析XML时保留空格

此外,调用该XElement.ToString()方法将导致XElement应用自己的格式.为了防止这种情况,你必须打电话XElement.ToString(SaveOptions.DisableFormatting)