将节点和子节点添加到XML文件

时间:2011-11-14 14:50:00

标签: c# xml linq

我有一个像这样的XML文件:

<LogFiles>
<Type1>
<File>
  <Component>1</Component>
  <Path>C:\TypeFiles</Path>
  <FileName>a.txt</FileName>
</File>
<File>
  <Component>1</Component>
  <Path>C:\TypeFiles</Path>
  <FileName>b.txt</FileName>
</File>
</Type1>
<Type2>
<File>
  <Component>2</Component>
  <Path>C:\TypeFiles2</Path>
  <FileName>c.txt</FileName>
</File>
</Type2>
</LogFiles>

我希望能够从我的C#代码中添加文件节点。我看过XML Serializer但它似乎意味着创建一个对象来保存文件细节,因此我的应用程序进行了大量的重新设计。我看过的一些其他XML Writer方法似乎擦除了XML文件中的所有内容,然后添加了新文件节点,这不是我想要的。任何想法都会有很大的帮助。

1 个答案:

答案 0 :(得分:1)

好吧,我一直使用XmlSerializer。我想把它写到我想要的文件中:

XmlSerializer serializer = new XmlSerializer(typeof(yourObject));
TextWriter streamWriter = new StreamWriter(filename);
serializer.Serialize(streamWriter, yourObject);
streamWriter.Close();

可能您只是可以逐个添加数据,但随后您将失去面向对象。如果我是你,我会重新考虑对您的应用程序进行一些更改,以便您可以使用XmlSerializer。