XML文件学习

1.什么事XML?

可扩展标记语言,Extensible Markup Language   标准通用标记语言的子集,简称XML。是一种用于标记电子文件使其具有结构性的标记语言。可扩展标记语言与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,可扩展标记语言仅仅是存储数据。事实上它与其他数据表现形式最大的不同是:可扩展标记语言极其简单,这是一个看上去有点琐细的优点,但正是这点使它与众不同。

XML:可扩展标记语音(eXtensible Markup Language,标签是可以自己定义的。小型数据库,可以将界面上的数据存储出来。

HTML:超文本标记语音,标签都是固定的,网页开发上用的多。

标记语语言

为什么不用txt保存数据繁琐,需要一行行去读取,并赋值,而且不知道哪个参数对应哪个参数。

 

2.手写一个XML文件

  a.声明一个xml文件    <?xml version="1.0"?>

  <?xml version="1.0" encoding="utf-8" ?>  utf-8是语言编码规则,默认的即可!

  b.添加一个根标签 <Students></Students>

  c.在根标签下添加一个子标签 <Student></Student>

  d.在子标签下再添加子标签 <name>xiaoming</name>

注释的写法:尖括号里面,感叹号开始

<!----------->

  • 直接创建,书写对应的内容;
  • 注意:大小写敏感,XML树,父节点、子节点、兄弟节点;
  • 元素和节点

<?xml version="1.0" encoding="utf-8" ?> --------描述行

<BOOKS>

  <book> -----------------------------------------这都是节点

    <BookName>水浒传</BookName>-------------节点,BookName是元素

    <Author>XXX</Author>

    <Price>10000</Price>

    <Des>好看!!!!!!!顶</Des>

  </book>

  <book>

    <BookName>三国演义</BookName>

    <Author>XXX</Author>

    <Price>10000</Price>

    <Des>好看!!!!!!!顶</Des>

  </book>

</BOOKS>

  • 通过代码来创建XML文件
  • using System.Xml;添加引用。

         //1.创建一个Xml文档对象

            XmlDocument doc = new XmlDocument();

            //2.创建第一行的描述信息--标准格式

            XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);

            //3.将创建的第一行数据添加到文档中

            doc.AppendChild(dec);

            //4.先创建根节点元素,每个xml文件有且只有一个根节点,如果没有创建根节点会报错

            XmlElement Books= doc.CreateElement("Books");

            //5.将创建好的根节点元素添加到doc文档中

            doc.AppendChild(Books);

            //6.添加子节点

            XmlElement book1 = doc.CreateElement("book1");

            Books.AppendChild(book1);

            //7.子节点下的内容,书名,作者,评价等等

            XmlElement BookName = doc.CreateElement("BookName");

            //InnerText设置标签内显示的内容

            BookName.InnerText = "水浒传";

            book1.AppendChild(BookName);

            XmlElement author = doc.CreateElement("Author");

            author.InnerText = "XXXX";

            book1.AppendChild(author);

            XmlElement Pricce = doc.CreateElement("Price");

            Pricce.InnerText = "100";

            book1.AppendChild(Pricce);

            //保存XML文件:①此时使用的是相对路径,在debug文件夹下,②后缀名是.xml

            doc.Save("Books1.xml");

            MessageBox.Show("保存成功");

3.C#创建XML文件,写入XML

4.C#读取XML文件

           //先创建一个XmlDocument 文件,使用Load方法,加载XML文件

            XmlDocument XmlDoc = new XmlDocument();

            XmlDoc.Load(@"E:\AA.xml");

            //获取指定的根节点

            XmlNode  XmlNode=XmlDoc.SelectSingleNode("Students");

            //根节点的属性ChildNodes获取该根节点下的所有子节点

            XmlNodeList ChildNodes= XmlNode.ChildNodes;

 

            foreach(XmlNode XN in ChildNodes)

            {

                XmlElement xmlEle = (XmlElement)XN;

                string name = xmlEle.GetAttribute("名字");

                string NO = xmlEle.GetAttribute("学号");

                XmlNodeList xnChildNodes = XN.ChildNodes;

                foreach (XmlNode XN1 in xnChildNodes)

                {

                    XmlElement xmlEle1 = (XmlElement)XN1;

                    string NA= xmlEle1.Name;

                    string G = xmlEle1.InnerText;

                    MessageBox.Show("姓名:" + name + ",学号:" + NO + NA+":"+G);

                }

            }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值