C#对XML的解析(笔记)

书本:
  可扩展标记语言(英语 :eXtensibleMarkupLanguage,简称: XML),是一种 标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。
用途:XML应用与Web开发许多方面,常用语简化数据的存储和共享
  语法规则:
  1. 所有XML元素都必须有关闭标签
  2. XML标签对大小写敏感
  3. XML标签必须正确的嵌套
  4. XML文档必须有根源素,有且只有一个
  5. XML的属性值必须加引号

     Engineer 为根节点,根元素

扩展性语言XML

C#解析XML文件

//首先导入System.XMl包
  Xmldocument myXml = new XmlDocument();//建立XMl文档对象
  myXml.Load("xxx.xml");//指定路径加载Xml文档
  XmlNode doc = myXml.DocumentElement;//获取文档更节点
  for(XmlNode nods in doc.ChildNodes)//遍历根节点下的节点,并找下节点出现的相关文本显示
  {
      Console.writeLine("Id{0}", nd.SelectSingleNode("Id").InnerText);
      Console.writeLine("Name{0}", nd.SelectSingleNode("Name").InnerText); 
      Console.writeLine("Age{0}", nd.SelectSingleNode("Age").InnerText);
 }


xmlReader类查看


扩展性语言XML 扩展性语言XML   

XmlReader reader = XmlReader.Create("singer.xml");//创建一个Xml的实例         
int num = -1;         
while (reader.Read()) //读取下一个节点         
{
          if (reader.NodeType == XmlNodeType.Element)//获取元素
          {
               if (reader.Name == "Name")
                {
                     TreeNode tn = new TreeNode();
                     tn.Text = reader.ReadElementContentAsString();
                     treeView1.Nodes.Add(tn); 
                    num++;
                      // MessageBox.Show(reader.ReadElementContentAsString());
                  }
                 else if (reader.Name == "Age" || reader.Name == "Hobby")
                  {
                     TreeNode tns = new TreeNode();
                     tns.Text = reader.ReadElementContentAsString();
                      treeView1.Nodes[num].Nodes.Add(tns); 
                  }
              }
         }


//   添加Xml子项
             mlDocument xd = new XmlDocument(); 
             xd.Load("note.xml"); 
             XmlElement xe = xd.DocumentElement;
             XmlElement ele = xd.createElement_x_x("Info");
             xe.A(ele);
             XmlAttribute a0 = xd.CreateAttribute("to");
             a0.Value = textBox1.Text; 
             ele.Attributes.Append(a0);
             xd.Save("note.xml"); 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值