Sha*_*ggy 3 c# xml xmldocument
我是一个新手.XmlDocument我想在c#中创建嵌套的xml文档.通过一些reaserach i fount,XmlDocument如果size很小,建议创建xml的方法.
我在创建嵌套标签时遇到了一些麻烦
码:
XmlDocument doc = new XmlDocument();
XmlDeclaration xDeclare = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
XmlElement root = doc.DocumentElement;
doc.InsertBefore(xDeclare, root);
XmlElement el = (XmlElement)doc.AppendChild(doc.CreateElement("FIXML"));
el.AppendChild(doc.CreateElement("Header")).InnerText = "";
el.AppendChild(doc.CreateElement("RequestHeader")).InnerText = "";
el.AppendChild(doc.CreateElement("MessageKey")).InnerText = "";
el.AppendChild(doc.CreateElement("RequestUUID")).InnerText = "938692349";
Console.WriteLine(doc.OuterXml);
Run Code Online (Sandbox Code Playgroud)
它的输出为
<?xml version="1.0" encoding="UTF-8"?>
<FIXML>
<Header></Header>
<RequestHeader></RequestHeader>
<MessageKey></MessageKey>
<RequestUUID>938692349</RequestUUID>
</FIXML>
Run Code Online (Sandbox Code Playgroud)
但应该是这样的
<?xml version="1.0" encoding="UTF-8"?>
<FIXML>
<Header>
<RequestHeader>
<MessageKey>
<RequestUUID>938692349</RequestUUID>
</MessageKey>
</RequestHeader>
</Header>
</FIXML>
Run Code Online (Sandbox Code Playgroud)
使用更新的XML API(XDocument)更容易
var doc =
new XElement("FIXML", // you can optionally add an XDocument as outer element
new XElement ("Header",
.... // more child elements, values and/or attributes
new XElement("RequestUUID", 938692349)
));
doc.Save(fileName);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5668 次 |
| 最近记录: |