c#中对xml的读取

节点类型:XmlDeclaration
属性:version=1.0属性:encoding=utf-8

/
节点类型:Whitespace
标记空白内容:

节点类型:Whitespace
标记空白内容:
/不是想要的结果啊!是为何?、???
源代码如下:读取代码如下:
        private void button1_Click(object sender, EventArgs e)
        {
            XmlReaderSettings settings = new XmlReaderSettings();
            settings.IgnoreComments = true;
            XmlReader xmlreader = XmlReader.Create(@"../../XMLFile1.xml", settings);
            string s = "";
            while(xmlreader.Read())
            {

                s += "/r/n" + "节点类型:" + xmlreader.NodeType + "/r/n";
                switch (xmlreader.NodeType)
                {
                    case XmlNodeType.XmlDeclaration:
                        for (int i = 0; i < xmlreader.AttributeCount; i++)
                        {

                            xmlreader.MoveToAttribute(i);
                            s += "属性:" + xmlreader.Name + "=" + xmlreader.Value + "";


                        }
                        break;
                    case XmlNodeType.Attribute:
                        for (int i = 0; i < xmlreader.AttributeCount; i++)
                        {
                            xmlreader.MoveToAttribute(i);
                            s += "属性:" + xmlreader.Name + "=" + xmlreader.Value + "" ;
                        }
                        break;
                    case XmlNodeType.CDATA:
                        s += "cada节" + xmlreader.Value + "";
                        break;
                     
                    case XmlNodeType.Element:
                        s += "节点名称:" + xmlreader.LocalName + "/r/n";
                        for (int i = 0; i < xmlreader.AttributeCount; i++)
                        {
                            xmlreader.MoveToAttribute(i);
                            s += "属性:" + xmlreader.Name + "=" + xmlreader.Value + "";
              
                        }
                        break;
                    case XmlNodeType.Comment:
                        s += "注释:" + xmlreader.Value;
                        break;
                    case XmlNodeType.Whitespace:
                        s += "标记空白内容:" + xmlreader.Value;
                        break;


                    case XmlNodeType.ProcessingInstruction:
                        s += "处理指令:" + xmlreader.Value;
                        break;
                   

                    case XmlNodeType.Text:
                        s += "节点内容:" + xmlreader.Value;
                        break;

                }
            }
            xmlreader.Close();
            textBox1.Text = s;


        }
xml的代码如下:

<?xml version="1.0" encoding="utf-8" ?>
<!-- This file is a part of a book store inventory database -->
<bookstore xmlns="http://example.books.com">
  <book 类型="计算机类" 出版时间="2009" ISBN="978-7-121-05477-8">
    <书名>Visual Basic.NET实用教程</书名>
    <作者>
      <主编>郑阿奇</主编>
      <编著>彭作名</编著>
    </作者>
    <价格>36元</价格>
  </book>
  <book 类型="计算机类" 出版时间="2009" ISBN="978-7-121-06142-4">
    <书名>Delphi实用教程</书名>
    <作者>
      <主编>郑阿奇</主编>
      <编著>顾韵华</编著>
    </作者>
    <价格>42元</价格>
  </book>
</bookstore>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值