我在C#.Net 4.0中有代码,我需要使用.Net 2.0框架处理计算机功能。基本上,它所做的是从服务器读取数据行。一行看起来像这样:
<REC CNT="5275" TIME="-66520.287" TIME_TICK="0" FPOGX="0.00000" FPOGY="0.00000" FPOGS="0.000" FPOGD="0.000" FPOGID="0"/>
我使用XElement.Parse函数将这些行添加到XML文档中。断开连接后,数据已保存。
XElement xmlDoc = new XElement("Data");
do
//dataLine is a string obtained each iteration by reading from a network stream
XElement xmlDataLine = XElement.Parse(dataLine);
xmlDoc.Add(xmlDataLine)
while (!stopClient)
xmlDoc.Save(fileName)
如何在.Net 2.0中执行此操作?
答案 0 :(得分:3)
最好使用XmlDocument
;
XmlDocument doc = new XmlDocument();
XmlElement root = (XmlElement)doc.AppendChild(doc.CreateElement("Data"));
do {
string dataLine = ...;
using(XmlReader reader = XmlReader.Create(
new StringReader(dataLine)))
{
root.AppendChild(doc.ReadNode(reader));
}
} while (!stopClient);
doc.Save(target);
答案 1 :(得分:1)
您可以使用XmlDocument.LoadXml
,但是您需要将根元素导入目标文档:
XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlDataLine);
XmlNode imported = xmlDoc.ImportNode(doc.DocumentElement, true);
xmlDoc.DocumentElement.AppendChild(imported);