zoukankan      html  css  js  c++  java
  • csharp XmlTextReader read xml file

    xml file:

    <?xml version="1.0" encoding="utf-8"?>
    <Root>
      <UserInfo>
        <Login Name="geovindu">
          <Pass>l17pi6MYm2g=</Pass>
        </Login>
        <Login Name="涂聚文祝你龙年大悦http://www.dusystem.com/Happynewyear.html">
          <Pass>4IGT6o/qA4vKYzlgizWsDg==</Pass>
        </Login>
        <Login Name="涂聚文">
          <Pass>ULNR7dw9V7M=</Pass>
        </Login>
      </UserInfo>
    </Root>
    
                int ws = 0;
    
                int pi = 0;
    
                int dc = 0;
    
                int cc = 0;
    
                int ac = 0;
    
                int et = 0;
    
                int el = 0;
    
                int xd = 0;
                XmlDocument xmlConditions = new XmlDocument();
                
                string url = Server.MapPath("User.xml");
                XmlTextReader textReader = new XmlTextReader(url);
                //textReader.WhitespaceHandling = WhitespaceHandling.None;
                //xmlConditions.Load(textReader);
                //XmlNode xnodDE = xmlConditions.DocumentElement;
    
                //Response.Write(xnodDE.ChildNodes[0].ToString());
    
               // string t=ChildDisplay(xnodDE, 0);
                //Response.Write(t);
                //textReader.Close();
                string sName = "";
                while (textReader.Read())
                {
                    XmlNodeType nType = textReader.NodeType;
    
                    // If node type us a declaration
    
                    if (nType == XmlNodeType.XmlDeclaration)
                    {
    
                        Response.Write("Declaration:" + textReader.Name.ToString() + "<br/>");
    
                        xd = xd + 1;
    
                    }
    
                    // if node type is a comment
    
                    if (nType == XmlNodeType.Comment)
                    {
    
                        Response.Write("Comment:" + textReader.Name.ToString() + "<br/>");
    
                        cc = cc + 1;
    
                    }
    
                    // if node type us an attribute
    
                    if (nType == XmlNodeType.Attribute)
                    {
    
                        Response.Write("Attribute:" + textReader.Name.ToString() + "<br/");
    
                        ac = ac + 1;
    
                    }
    
                    // if node type is an element
    
                    if (nType == XmlNodeType.Element)
                    {
    
                        Response.Write("Element:" + textReader.Name.ToString() + "<br/>");
    
                        el = el + 1;
    
                    }
    
    
    
                    // if node type is an entity\
    
                    if (nType == XmlNodeType.Entity)
                    {
    
                        Response.Write("Entity:" + textReader.Name.ToString() + "<br/>");
    
                        et = et + 1;
    
                    }
    
                    // if node type is a Process Instruction
    
                    if (nType == XmlNodeType.Entity)
                    {
    
                        Response.Write("Entity:" + textReader.Name.ToString() + "<br/>");
    
                        pi = pi + 1;
    
                    }
    
                    // if node type a document
    
                    if (nType == XmlNodeType.DocumentType)
                    {
    
                        Response.Write("Document:" + textReader.Name.ToString() + "<br/>");
    
                        dc = dc + 1;
    
                    }
    
                    // if node type is white space
    
                    if (nType == XmlNodeType.Whitespace)
                    {
    
                        Response.Write("WhiteSpace:" + textReader.Name.ToString() + "<br/>");
                        //Response.Write("name:" + xmlConditions.Attributes["Name"].ToString());
                        //Response.Write("login:" + xmlConditions.GetElementsByTagName("Login").ToString());
                        ws = ws + 1;
    
                    }
    
    
                    switch (textReader.NodeType)
                    {
    
                        case XmlNodeType.Element:
                            sName = textReader.Name;
                            Response.Write("读取:Element:" + sName + "<br/>");
                            if (textReader.HasAttributes)
                            {
                                for (int i = 0; i <= textReader.AttributeCount - 1; i++)
                                    Response.Write("屬性: " + textReader.GetAttribute(i) + " <br/>");
                                Response.Write("屬性Name: " + textReader.GetAttribute("Name") + " <br/>");
                            }
                            if (sName == "Login")
                            {
                                Response.Write("IF屬性Name: " + textReader.GetAttribute("Name") + " <br/>");
                            }
                            break;
                        case XmlNodeType.Text:
                            switch (sName)
                            {
                                case "Login":
                                    Response.Write("Login:"+textReader.Value+"<br/>");
                                    if (textReader.HasAttributes)
                                    {
                                        for (int i = 0; i <= textReader.AttributeCount - 1; i++)
                                            Response.Write("屬性: " + textReader.GetAttribute(i) + " <br/>");
                                    }
                                    break;
                                case "Pass":
                                    Response.Write("Pass:" + textReader.Value + "<br/>");
                                    break;
                                case "UserInfo":
                                    Response.Write("UserInfo:" + textReader.Value + "<br/>");
                                    break;
                            }
                            break;
                    }
                   
    
    
                }
    
                Response.Write("Total Comments:" + cc.ToString());
    
                Response.Write("Total Attributes:" + ac.ToString());
    
                Response.Write("Total Elements:" + el.ToString());
    
                Response.Write("Total Entity:" + et.ToString());
    
                Response.Write("Total Process Instructions:" + pi.ToString());
    
                Response.Write("Total Declaration:" + xd.ToString());
    
                Response.Write("Total DocumentType:" + dc.ToString());
    
                Response.Write("Total WhiteSpaces:" + ws.ToString());
    
    哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)成功.---Geovin Du(涂聚文)
  • 相关阅读:
    在web项目下注册MySQL数据库驱动失败
    Servlet 调用过程
    请求时参数到后台解码时会出现乱码问题
    Request 部分功能
    dom4j增删改查
    微信消息处理JAXP-sax解析
    微信消息处理JAXP-dom解析
    inputstream与其他格式的转换
    微信消息处理
    将Gridview导出到Excel
  • 原文地址:https://www.cnblogs.com/geovindu/p/2319849.html
Copyright © 2011-2022 走看看