C# XML读取写入
时间: 2023-07-12 08:08:58 浏览: 96
在 C# 中,我们可以使用 System.Xml 命名空间下的 XmlReader 和 XmlWriter 类来读取和写入 XML 文件。
下面是一个简单的示例,展示如何读取和写入 XML 文件:
读取 XML 文件:
```csharp
using System.Xml;
// 创建 XmlReader 对象
XmlReader reader = XmlReader.Create("file.xml");
// 读取 XML 文件内容
while (reader.Read())
{
// 处理 XML 元素
switch (reader.NodeType)
{
case XmlNodeType.Element:
Console.WriteLine("Start Element: " + reader.Name);
break;
case XmlNodeType.Text:
Console.WriteLine("Text: " + reader.Value);
break;
case XmlNodeType.EndElement:
Console.WriteLine("End Element: " + reader.Name);
break;
}
}
// 关闭 XmlReader 对象
reader.Close();
```
写入 XML 文件:
```csharp
using System.Xml;
// 创建 XmlWriterSettings 对象
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
// 创建 XmlWriter 对象
XmlWriter writer = XmlWriter.Create("file.xml", settings);
// 开始写入 XML 文件
writer.WriteStartElement("root");
writer.WriteStartElement("person");
writer.WriteAttributeString("name", "张三");
writer.WriteElementString("age", "18");
writer.WriteEndElement();
writer.WriteStartElement("person");
writer.WriteAttributeString("name", "李四");
writer.WriteElementString("age", "20");
writer.WriteEndElement();
// 结束写入 XML 文件
writer.WriteEndElement();
// 关闭 XmlWriter 对象
writer.Close();
```
上述代码中,我们首先创建了 XmlReader 和 XmlWriter 对象。对于 XmlReader,我们可以使用其 Read() 方法循环遍历 XML 文件中的每个元素,并根据元素类型做出相应的处理。对于 XmlWriter,我们可以使用其 WriteStartElement()、WriteAttributeString()、WriteElementString() 和 WriteEndElement() 等方法来创建 XML 元素,并最终将其写入文件中。
需要注意的是,在使用 XmlWriter 写入 XML 文件时,我们需要手动添加起始和结束元素,否则会导致 XML 文件格式不正确。另外,我们还可以通过 XmlWriterSettings 对象设置 XML 文件的格式,比如是否缩进等。
阅读全文