黑马训练营-.net框架下对xml操作
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
这是一篇纯粹的基于.net框架xml api的介绍:
1.最最最简单的创建xml对象的方法(其实xml对象的说法不是很准确):
System.Xml.XmlDocument这个类,用于对xml的一些基本操作:
首先是获取xml文件,代码如下:
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(Server.MapPath(@"~/[xml的路径]/[xml文件名]"));
这样xmldoc将获取一个xml的文档对象,然后你能通过Xpath取到任何节点值/属性值,如下有个xml示例文档:
<root>
<node>1</node>
<node attr="2">3</node>
</root>
通过如下代码:
//_nodes_获取node的所有节点
System.Xml.XmlNodeList _nodes_ = xmldoc.SelectNodes("root/node");
Response.Write(_nodes_[0].Value); //1
Response.Write(_nodes_.SelectSingleNode("[2]").Value); //3
Response.Write(_nodes_[1].SelectSingleNode("@attr"); //2
此时需要注意一点:
即nodelist时,.net下标是从0开始的,而xpath是从1开始的。
如果需要对xml进行修改的话(不是创建),对你要修改的节点/属性直接赋值即可,代码如下:
_nodes_[0].Value = 5;
当然这个时候需要最关键的一步就是保存你的修改:
xmldoc.Save(Server.MapPath(@"~/[xml的路径]/[xml文件名]"));
这样你就能保存修改了!
怎么创建一个element呢?
1 System.Xml.XmlElement xmlelement = xmldoc.CreateElement("tagName");
2
3 //此处对这个节点进行设置,比如相关的属性值...
4 xmlelement.SetAttribute("attrkey1", "attrvalue1");
5 xmlelement.SetAttribute("attrkey2", "attrvalue2");
6
7 //然后将节点插入文档中的某个位置
8 xmldoc.SelectSingleNode("root").Append(xmlelement);
9
10 //最好同样需要对xmldoc进行的操作保存
11 xmldoc.Save(Server.MapPath(@"~/[xml的路径]/[xml文件名]"));
类似了,要为一个节点设定新的属性值,也如上面的代码:
xmlelement.SetAttribute("attrkey1", "attrvalue1");
这个就是基于XmlDocument这个类的基本操作!
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
详细请查看:http://net.itheima.com/