C# 基础复习 三 XML操作

XML 可扩展标记语言(所有标签都是自己定义,没有固定格式)

如果要给XML规定格式,可以使用dtd (dtd是什么?你不会自己百度吗)

XML主要用来存储数据

XML的要求:
    根节点只能有一个
    每个节点必须结束
 
<student>
    <class name="T139">
        <student id="1" name="张三" />
        <student id="2" name="李四" />
        <student id="3" name="王五" />
        <student id="4" name="赵六" />
    </class>
    <class name="T138">
        <student id="1" name="张一" />
        <student id="2" name="李二" />
        <student id="3" name="王三" />
        <student id="4" name="赵四" />
    </class>
</student>

要让xml出现在Debug文件夹中,设置属性为“如果较新则复制”

如果较新则复制:只有在直接修改xml文件时才会重新复制,使用代码更改内部时不会重新复制

 

using system.xml 操作xml的命名空间

 

xml和html类似,操作html时需要一个文档对象(document),而在xml中是XmlDocument

XmlDocument doc = new XmlDocument();

doc.Load("xml路径"); //读取xml文件

var rootNode = doc.DocumentElement //获取根节点
    
roodNode.ChildNodes//获取某个节点的子节点

rootNode.Attributes["属性名称"].Value; //获取某个节点中某个属性的值

doc.CreateElement("节点名");//创建一个新节点

rootNode.AppendChild(节点对象);//为某个节点添加一个子节点

doc.CreateAttribte("属性名")//创建一个新属性

Attribte.Value = ""; //给属性赋值

rootNode.Attributes.Append(属性对象) //给某个节点添加属性

doc.Save("xml路径");//保存到某xml文件中

doc.SelectNodes("XML层级表达式");

XML 层级表达式 

"students/class[@name='T139']/Student" //students中所有name为T139的class中的所有Student

linq for xml 用linq的方式查找xml

 

XML格式的文件最常见的就是配置文件
配置文件中常用的节点
    appSettings 应用程序设置 一些数据较少的细节设置(字体,logo,默认账号)可以不存入数据库,直接写在配置文件,可以提高性能
<appSettings>
    <add key="fontcolor"  value="red"/>
</appSettings>
ConfigurationManager.AppSettings["fontcolor"] //获取值

 

posted @ 2018-04-19 20:43  生命不息bug不止  阅读(168)  评论(0编辑  收藏  举报