千家信息网

如何对任意XML进行遍历

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,小编给大家分享一下如何对任意XML进行遍历,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!对于任意的XML的遍历class
千家信息网最后更新 2025年01月19日如何对任意XML进行遍历

小编给大家分享一下如何对任意XML进行遍历,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

对于任意的XML的遍历

class test        {            PRivate static string root;            public static  void showxml(string path)            {                XmlDocument xd = new XmlDocument();                xd.Load(path);                                XmlNodeList xnl = xd.DocumentElement.ChildNodes;                root = xd.FirstChild.NextSibling.Name;//记录根节点                Console.Write(root+"\n");                foreach (XmlNode xn in xnl)                {                    //Console.Write(xn.Attributes["name"].Value.ToString()+"\n");                    XmlNode child = xn.FirstChild;                                        NodeOperate(child);                              }            }            public static  void NodeOperate(XmlNode xn1)            {                if (xn1.HasChildNodes == true)                {                    Console.Write(xn1.Name + "\n");                    Console.Write("\n");                    XmlNode childNode = xn1.FirstChild;                                        NodeOperate(childNode);                }                else                {                    Console.Write(xn1.Name + "\n");                    Console.Write(xn1.InnerText);                    Console.Write("\n");                    if (xn1.NextSibling != null)                    {                                                NodeOperate(xn1.NextSibling);                    }                    else                    {                        int flag = 0;                        while (xn1.NextSibling == null)                        {                                                                                   if (xn1.Name == root)//检查是否到了根节点,如果不检查会出现节点的引用错误                            {                                flag = 1;                                break;                            }                            else                            {                                xn1 = xn1.ParentNode;                            }                                                    }                        if (flag == 0)                        {                            NodeOperate(xn1.NextSibling);                        }                        else if(flag==1)                        {                            Console.Write("End");                        }                    }                                    }            }        }        public static void Main()        {                      test.showXML(@"C:\Documents and Settings\SKY\My Documents\Visual Studio 2005\Projects\Project1\Project1\system.xml");            Console.Read();        }

以上是"如何对任意XML进行遍历"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0