30天C#基础巩固----查找XML文件元素

一:XML文档

了解xml文档。

利用代码来创建XML文档。

            //引用命名空间+using System.Xml;
            XmlDocument xdoc=new XmlDocument();

            XmlDeclaration xdec = xdoc.CreateXmlDeclaration("1.0",
                "gb2312",null);            //设置版本信息
            xdoc.AppendChild(xdec);
            //设置节点root
            XmlElement xele = xdoc.CreateElement("root");
            xdoc.AppendChild(xele);
            //设置节点的属性id;
            XmlAttribute xatt = xdoc.CreateAttribute("id");
            xatt.Value = "ahui";      //id=ahui;
            //设置节点的文本内容。
            XmlText xtText = xdoc.CreateTextNode("aaaaaaaa");            

            xele.AppendChild(xtText);             //文本加入root节点下面。
            xele.Attributes.Append(xatt);       //属性id加入root属性下。
            xdoc.Save("1.xml");                    //保存xml文件。

---->Linq To Xml

            //引用命名空间,using System.Xml.Linq;
            XDocument Xdoc=new XDocument();
            XElement xele=new XElement("root","你好,世界");
            XAttribute xatt=new XAttribute("id","002");
            Xdoc.Add(xele);
            xele.Add(xatt);
            Xdoc.Save("2.xml");

--->XML 的查找

从xml文本中找到name=”张辉01”的,返回父节点。

    class Program
    {
        static void Main(string[] args)
        {
            #region 查找XML
            //读取本地的xml文件。
            XDocument xdoc = XDocument.Load("ahui.xml");
            List<XElement> xele=new List<XElement>();
            SearchElementsZhanHui(xdoc.Root,xele);
            foreach (XElement item in xele)
            {
                Console.WriteLine(item.Name);
            }
            Console.ReadKey();

            #endregion
        }
        /// <summary>
        /// 查找XML文档中的name=张辉01的。
        /// </summary>
        /// <param name="ele"></param>
        /// <param name="list"></param>
        public static void SearchElementsZhanHui(XElement ele,List<XElement> list )
        {
            //首先遍历ele的所有节点
            //ele.Elements()+按文档顺序返回此元素或文档的子元素集合
            foreach (XElement item in ele.Elements())
            {
                 //判断这个元素是否为张辉01
                if (item.Name.LocalName=="name")
                {
                    if (item.Value == "张辉01")
                    {
                        list.Add(item.Parent);
                    }
                }
                //如果item里面还有子节点就递归。
                SearchElementsZhanHui(item,list);
            }
        }
    }

时间: 2024-08-10 19:15:41

30天C#基础巩固----查找XML文件元素的相关文章

XML文件的一些操作

XML 是被设计用来传输和存储数据的, XML 必须含有且仅有一个 根节点元素(没有根节点会报错) 源码下载 http://pan.baidu.com/s/1ge2lpM7 好了,我们 先看一个 XML 文件(Cartoon.xml) <?xml version="1.0" encoding="utf-8"?> <Cartoon> <Character Company="DC"> <Name>超人&

使用Dom4j解析包含有DB连接信息的XML文件以及节点属性的获取

包含DB连接信息的XML文件 1 <!--示例1——三级显示--> 2 <db-connections> 3 <connection> 4 <name>DBTest</name> 5 <jndi></jndi> 6 <url> 7 <![CDATA[jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=UTF8]

web.xml 文件配置01

web.xml 文件配置01 前言:一般的web工程中都会用到web.xml,方便开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web.xml并不是必须的,一个web工程可以没有web.xml文件. 1.定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文 件的字符编码.web.xml的模式文件是由Sun公司定义的,每个web.xml文件的根元素<web-app>中,都必

PowerShell技巧:使用XPath语法查询XML文件

[TechTarget中国原创] XML是存储结构化数据的一个很好的途径,但是想要让数据在其中发挥作用又会有些困难.每一种语言都有其特定方式来查询XML文件中的命名空间.元素及属性.PowerShell也不例外.PowerShell在查询XML文件时会略有不同,而该技巧主要依赖于Select-Xml命令和XPath语法上. XPath是定义XML文件组成的语言.XPath早在1999年就已经存在,一直被用于查询XML文件最标准的方法. XPath将XML文件定义为树.XML文件中的每个节点都节点

PHP读写XML文件的四种方法

PHP对XML文件进行读写操作的方法一共有四种,分别是:字符串方式直接读写.DOMDocument读写. XMLWrite写和XMLReader读.SimpleXML读写,本文将依次对这四种方法进行介绍. 介绍之前首先对本文例子使用的数据和文件进行说明.本文写XML文件的例子都是从MySQL中读取数据然后 写入到XML文件中,读XML文件的例子都是从XML文件中读取数据后组装成数组的格式,数组中每个元素对应数 据库中的一条记录. MySQL中的数据: XML文件: 1 2 3 4 5 6 7 8

web.xml文件详解

web.xml文件详解 前言:一般的web工程中都会用到web.xml,web.xml主要用来配置,可以方便的开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web.xml并不是必须的,一个web工程可以没有web.xml文件. 1.WEB工程加载web.xml过程 经过个人测试,WEB工程加载顺序与元素节点在文件中的配置顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.WEB容器的加载顺序是:S

[转] web.xml文件详解

转自:http://www.cnblogs.com/hellojava/archive/2012/12/28/2835730.html 前言:一般的web工程中都会用到web.xml,web.xml主要用来配置,可以方便的开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web.xml并不是必须的,一个web工程可以没有web.xml文件. 1.WEB工程加载web.xml过程 经过个人测试,WEB工程加载顺序与元素节点在文件中的配置顺序无

android基础知识13:AndroidManifest.xml文件解析

1.重要性 AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目录下,描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,各种能被处理的数据和启动位置等重要信息. 因此,该文件提供了Android系统所需要的关于该应用程序的必要信息,即在该应用程序的任何代码运行之前系统所

C#控制台基础 在博客备份xml文件中提取所有博文的标题 (正则,流读取)

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ introduction: 解析 博客园-博客备份 生成的XML文件,获得所有博文的标题. code: 1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System