如何在C#中将字符串转换为有效的XML(带转换)

本文关键字:转换 有效 XML 字符串 | 更新日期: 2023-09-27 18:29:43

如何使用C#将简单字符串转换为<root>元素中的有效XML

因此,如果我有字符串"Operation 2 > 3",我需要将其转换为"<root>Operation 2 &gt; 3</root>"

编辑:我没有明确表达自己。有没有一种方法可以自动转换XML字符的特殊字符?

如何在C#中将字符串转换为有效的XML(带转换)

string value="Operation 2 > 3";
string xmlValue= "<root>"+ value.Replace("<","&lt;").Replace("&", "&amp;")
                                                   .Replace(">", "&gt;")
                                                   .Replace("'"", "&quot;")
                                                   .Replace("'", "&apos;") + "</root>"

通过这样做(使用System.Xml.Linq)

XElement el = new XElement("root");
el.Add(new XText("Operation 2 > 3"));
string sXML = el.ToString();    // Result: <root>Operation 2 &gt; 3</root>

您只需在内存中创建一个根节点,然后用您想要的内容填充它。XElement类将处理生成此有效XML文本所需的所有"转义"。

试试这个:

使用System.Xml;

string s = "hello";
XmlDocument xml = new XmlDocument();
xml.LoadXml(string.Format("<root>{0}</root>", s));

您可以使用文本编辑变量s。