认识Xml
一、什么是xml
1、xml概念
xml是可扩展性标记语言,和HTML相似,都是标记语言;但是xml是用存储和传输数据的,HTML是用来展示数据的。
xml的命名空间是:System.Xml
2、xml作用
xml的作用就是传输和存储数据;
3、xml结构
xml是一个树形结构,一定要有一个根节点;
1、xml基本语法
1、大小写敏感
2、标签成双成对出现
3、标签可以自定义
4、元素必须正确的嵌套
5、必须要有一个根节点
2、xml命名
1、名称可以含字母、数字以及其他的字符
2、名称不能以数字或者标点符号开始
3、名称不能以字符 “xml”(或者 XML、Xml)开始
4、名称不能包含空格
5、属性值必须用引号引起来
<person sex="female">
<person sex='male'>
4、xml是不作为的
1、xml仅仅是纯文本
xml是纯文本,txt也是纯文本;所有的xml的编辑工具,任何打开txt的工具都可以
2、通过xml可以发明自己的标签
3、xml不是对HTML的替代,而是对HTML的补充;
5、特殊的意义字符
Java和C#中的转义字符是:\,SQL Server数据库的转义字符是[];
xml的特殊字符:
表示 | 符号 | 中文 |
---|---|---|
<; | < | 小于 |
>; | > | 大于 |
&; | & | 和 |
&apos; | ’ | 单引号 |
"; | " | 双引号 |
注:这里的分号必须是英文状态的分号;
注释:
<!--注释内容-->
二、C#读取xml
1、声明XmlDocument对象
1、new一个XmlDocument对象
//创建
XmlDocument xmlDoc = new XmlDocument();
2、加载xml文件
xmlDoc.Load("xml文件路径"); //加载xml文件
3、读取xml的根节点
XmlNode node = XmlD.DocumentElement;
XmlElement xmlE = xmlDoc.Document; //获取根节点
4、遍历子节点
foreach(XmlNode node in xmlE.ChildNodes)
{
Console.Write(node["子节点的节点名"].InnerText); //用[]获得节点的子节点
}
5、TreeView
TreeView是一个树形控件;
TreeView的属性和事件:
属性 | 说明 |
---|---|
Nodes | 获取TreeView控件的所有子节点 |
SelectNode | 当前TreeView控件中选中的树节点,如果没有选中树节点就会返回null |
重要事件 | 说明 |
AfterSelect | 选中树节点之后发生 |
1、给TreeView添加节点:
1、创建一个TreeNode节点;
TreeNode rootNode = new TreeNode(this.txtTitle.Text);
this.TreeView1.Node.Add(rootNode);
2、Add()方法的参数可以是文本
TreeView1.Nodes.Add("语言");
2、TreeView动态删除
1、删除选中节点
this.TreeView.SelectedNode.Remove();
2、清空选中的节点的子节点
this.TreeView.SelectedNode.Nodes.Close();
3、清空TreeView控件的所有子节点
this.TreeView.Nodes.Remove();
3、TreeNode对象
属性:
属性 | 说明 |
---|---|
Text | 节点显示的文本 |
Index | 节点的下标 |
Level | 深度,层级 |
Tag | 隐藏域 |
Nodes | 节点的所有下一级子节点 |
6、XmlDocument对象
方法和属性
属性和方法 | 说明 |
---|---|
DocumentElement属性 | 获取根节点 |
ChildNodes属性 | 获取所有子节点 |
Load()方法 | 读取整个xml的结构 |
7、XmlNode对象
属性
属性 | 说明 |
---|---|
InnerText | 当前节点的值 |
Name | 当前节点的名称 |
ChildNodes | 当前节点的所有的子节点 |