C#实现嵌套循环的示例代码

 更新时间:2023年09月15日 11:18:10   作者:Z_W_H_  
这篇文章主要为大家详细介绍了C#实现嵌套循环的相关知识,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的小伙伴可以跟随小编一起学习一下

例子说明

循环遍历xml文件中的信息包括:节点名称(一个),节点的串联值(一个),节点的属性(多个)

Xml文件

<?xml version="1.0" encoding="utf-8" ?>
<Computers>
    <Computer ID="11111111" Description="Made in China">
        <name>Lenovo</name>
        <price>5000</price>
    </Computer>
    <Computer ID="2222222" Description="Made in USA">
        <name>IBM</name>
        <price>10000</price>
    </Computer>
</Computers>

C#嵌套循环代码

       private static void optimizeGetXMLInformation1(string xmlFilePath)
        {
            try
            {
                //初始话一个XMl实例
                XmlDocument myXmlDoc = new XmlDocument();
                //加载XMl文件(xmlFilePath:为XMl的路径)
                myXmlDoc.Load(xmlFilePath);
                //获取节点中的第一个子节点
                var rootNodeChild = myXmlDoc.FirstChild;
                if(rootNodeChild != null){ 
                    GetNodeInformation(rootNodeChild);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
        private static void GetNodeInformation(XmlNode xmlNode) 
        {
            while (xmlNode != null)
            {
                //输出节点名称及串联值
                Console.WriteLine($"节点:{xmlNode.Name} = {xmlNode.InnerText}");
                //获得该节点的属性集合
                XmlAttributeCollection xmlNodeattributeCol = xmlNode.Attributes;
                if (xmlNodeattributeCol != null)
                {
                    foreach (XmlAttribute attri in xmlNodeattributeCol)
                    {
                        //输出节点包含的属性名称与属性值
                        Console.WriteLine($"属性:{attri.Name} = {attri.Value}");
                    }
                }
                //获取该节点的第一个子节点
                var xmlNodeChild = xmlNode.FirstChild;
                //判断节点的子节点是否存在,第一个子节点都不存在的话,那说明该节点没有子节点
                if (xmlNodeChild != null)
                {
                    //子节点存在就集训循环输出该节点的信息
                    GetNodeInformation(xmlNodeChild);
                }
                //节点循环到下一个节点
                xmlNode = xmlNode.NextSibling;
            }
        }

流程图

到此这篇关于C#实现嵌套循环的示例代码的文章就介绍到这了,更多相关C#嵌套循环内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

最新评论