• XMLWriter 和 XMLReader
    • 一、定义
    • 二、XMLWriter
  • 三、XMLReader

    XMLWriter 和 XMLReader

    一、定义

    XMLWriter表示一个写入器,该写入器提供一种快速、非缓存和只进方式以生成包含 XML 数据的流或文件。

    XMLReader表示提供对 XML 数据进行快速、非缓存、只进访问的读取器。

    1. 命名空间:
    2. System.Xml
    3. 程序集:
    4. System.XmlSystem.Xml.dll 中)

    二、XMLWriter

    XMLWriter 创建 XML 声明

    1. //引入命名空间
    2. using System.Xml;
    3. XmlTextWriter textWriter = new XmlTextWriter(@"d:\xmlRead.xml",Encoding.UTF8);
    4. textWriter.WriteStartDocument();

    XMLWriter 创建节点

    1. textWriter.WriteStartElement(“root");
    2. textWriter.WriteStartElement(“Child");
    3. // 为元素加入属性
    4. textWriter.WriteElementString(“SubChild”, “这是元素内容");
    5. textWriter.WriteEndElement();
    6. textWriter.WriteEndElement();

    XMLWriter为元素加入属性

    1. textWriter.WriteStartElement("Child");
    2. textWriter.WriteAttributeString("属性A","A");
    3. textWriter.WriteAttributeString("属性B","B");
    4. textWriter.WriteEndElement();

    XMLWrite写入注释

    1. textWriter.WriteComment(“注释内容");
    2. textWriter.WriteCData(“<strong>CData 内容</strong>");

    XMLWrite创建XML 要点

    1. XMLWrite 子节点 和属性 必须在WriteEndElement()方法前。
    2. 开始写入,调用WriteStartDocument方法。
    3. 写入结束,调用WriteEndDocument方法,和Close方法,关闭流。

    三、XMLReader

    XmlReader读取XML

    1. //读取一个外部XML
    2. XmlTextReader textReader = new XmlTextReader(@"d:\xmlRead.xml");

    XmlReader读取节点信息

    1. while (textReader.Read())
    2. {
    3. if (textReader.NodeType == XmlNodeType.Element)
    4. {
    5. Console.WriteLine("Name:" + textReader.Name);
    6. Console.WriteLine("Value:" + textReader.ReadString());
    7. }
    8. }

    XmlReader读取属性

    1. //方式一:取得当前Reader元素的指定名称的属性值;
    2. textReader.GetAttribute(“属性A”);
    3. //方式二,获取当前Reader元素的属性,将Reader移动到当前属性;
    4. for (int i = 0; i < textReader.AttributeCount; i++)
    5. {
    6. textReader.MoveToAttribute(i);
    7. Console.WriteLine("AttributeName:" + textReader.Name);
    8. Console.WriteLine("AttributeValue:" + textReader.Value);
    9. }

    ?