一: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);
}
}
}

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

  1. C# XML基础入门(XML文件内容增删改查清)

    前言: 最近对接了一个第三方的项目,该项目的数据传输格式是XML.由于工作多年只有之前在医疗行业的时候有接触过少量数据格式是XML的接口,之后就几乎没有接触过了.因此对于XML这块自己感觉还是有很多盲 ...

  2. 【dom4j xml】使用dom4j处理XML文件--测试过程遇到的问题

    首先 关于dom4j的API,有如下: 当然  其中的实体引用有以下: 测试使用环境: 使用Maven搭建web环境,pom.xml文件配置如下: <project xmlns="ht ...

  3. web.xml 文件配置01

    web.xml 文件配置01   前言:一般的web工程中都会用到web.xml,方便开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web. ...

  4. PHP读写XML文件的四种方法

    PHP对XML文件进行读写操作的方法一共有四种,分别是:字符串方式直接读写.DOMDocument读写. XMLWrite写和XMLReader读.SimpleXML读写,本文将依次对这四种方法进行介 ...

  5. java使用dom4j解析xml文件

    关于xml的知识,及作用什么的就不说了,直接解释如何使用dom4j解析.假如有如下xml: dom4j解析xml其实很简单,只要你有点java基础,知道xml文件.结合下面的xml文件和java代码, ...

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

    [TechTarget中国原创] XML是存储结构化数据的一个很好的途径,但是想要让数据在其中发挥作用又会有些困难.每一种语言都有其特定方式来查询XML文件中的命名空间.元素及属性.PowerShel ...

  7. [转] web.xml文件详解

    转自:http://www.cnblogs.com/hellojava/archive/2012/12/28/2835730.html 前言:一般的web工程中都会用到web.xml,web.xml主 ...

  8. SAX方式解析XML文件实例

    books.XML文件: 书籍book.java实体类: public class Book { private String id; private String name; private Str ...

  9. MVC模式下xml文件的解析

    第一次写blog,组织不当和出错的地方还请大家多担当哈. java操作xml文件的方式中用的较多的有四种,DOM.SAX.JDOM.DOM4J.除第一种外其余的三种我都有试过,这后三种方案中我选择用S ...

随机推荐

  1. 关于RPC与MQ异同的理解

    最近看了一些资料,回顾过去项目的经验,梳理自己对两者异同的理解: 相同: 1.都利于大型系统的解耦: 2.都提供子系统之间的交互,特别是异构子系统(如java\node等不同开发语言): 不同: 1. ...

  2. require、module、exports dojo中的三个特殊模块标识

    查看dojo源码过程中,发现这三个模块名并不以dojo.dijit.dojox开头,在dojo加载器中属于特殊模块名. require 这是一个上下文智能的加载器. 我们通过dojoConfig配置了 ...

  3. Selenium自动化测试问题

    org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 ...

  4. Word发布博客测试

    /// <summary> /// Main相当于Windows服务的Start方法 主要负责初始化的工作 /// </summary> /// <param name= ...

  5. windows 8.1 试用感受:蛋疼感大幅降低

    众所周知windows 8 的最大使用感受就是蛋疼. 无论是微软MVP,还是我这样的万年不悔微软小白鼠,普通用户,小白用户,或多或少的都对这款操作系统感到蛋疼. 槽点太多,以至于大家都懒得批判了.好在 ...

  6. iOS——Core Animation 知识摘抄(三)

    原文地址:http://www.cocoachina.com/ios/20150105/10827.html CAShapeLayer CAShapeLayer是一个通过矢量图形而不是bitmap来绘 ...

  7. JavaScript高级-定义函数(类)方法

    1.定义普通函数(常用) //1.普通函数 function defineFun1(p1, p2) { return p1 + p2; } 2.定义匿名函数(最常用) //2.匿名函数 var def ...

  8. underscore源码阅读记录

    这几天有大神推荐读underscore源码,趁着项目测试的空白时间,看了一下. 整个underscore包括了常用的工具函数,下面以1.3.3源码为例分析一下. _.size = function(o ...

  9. 将不确定变为确定~DateTime.MinValue和MaxValue引发的异常

    回到目录 问题描述: SqlDateTime 溢出.必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间 概念相关 .Net中的DateTime结 ...

  10. Atitit 图像处理 灰度图片 灰度化的原理与实现

    Atitit 图像处理 灰度图片 灰度化的原理与实现 24位彩色图与8位灰度图 首先要先介绍一下24位彩色图像,在一个24位彩色图像中,每个像素由三个字节表示,通常表示为RGB.通常,许多24位彩色图 ...