内置.NET函数,用于在XML流中转义字符?

Pol*_*878 12 .net c# xml

所以,我有以下形式的一些数据:

<foo><bar>test</bar></foo>
Run Code Online (Sandbox Code Playgroud)

我想用什么.NET类/函数将它转换为漂亮的东西并将其写出来看起来像这样的文件:

<foo>
   <bar>
       test
   </bar>
</foo>
Run Code Online (Sandbox Code Playgroud)

具体说明函数和类,而不仅仅是"使用System.XML".使用XML在.NET中似乎有很多不同的方法:(

谢谢

Jos*_*ola 16

使用System.Xml.XmlDocument班级......

Dim Val As String = "&lt;foo&gt;&lt;bar&gt;test&lt;/bar&gt;&lt;/foo&gt;"
Dim Xml As String = HttpUtility.HtmlDecode(Val)

Dim Doc As New XmlDocument()
Doc.LoadXml(Xml)

Dim Writer As New StringWriter()
Doc.Save(Writer)

Console.Write(Writer.ToString())
Run Code Online (Sandbox Code Playgroud)

  • -1代表VB,+ 2代表我想要的.谢谢 :) (4认同)

Ade*_*eel 8

你可以使用这段代码.

string p = "&lt;foo&gt;&lt;bar&gt;test&lt;/bar&gt;&lt;/foo&gt;";
Console.WriteLine(System.Web.HttpUtility.HtmlDecode(p));
Run Code Online (Sandbox Code Playgroud)


anv*_*ish 6

如果漂亮的打印不重要,请从.NET 4.0开始使用System.Net.WebUtility.HtmlDecode