Xml是扩展标记语言的简写,是一种开发的文本格式。关于它的更多情况可以通过w3组织了解http://www.w3.org/TR/1998/REC-xml-19980210。如果你不知道它,那你就out太多了。
.Net是如何处理Xml的?
1.通过XmlDocument读写Xml文档
2.通过XmlWriter和XmlReader读写Xml文档
3.使用Link to xml存取XML
4.通过XmlScheme定义固定格式xml文档
5.Xml序列化或者反序列化类
6.通过XPath查找Xml节点
7.通过Xslt转化Xml格式
通过XmlDocument读写Xml文档
有如下一段Xml:
<?xml version="1.0" encoding="utf-8" ?>
<students>
<!--我是一段注释文字-->
<student name="张平">
<courses>
<course name="语文?">
<teacherComment>
<![CDATA[
这里是语文老师的批注
]]>
</teacherComment>
</course>
<course name="数学">
<teacherComment>
<![CDATA[
这里是数学老师的批注
]]>
</teacherComment>
</course>
</courses>
</student>
</students>
1.如何使用XmlDocument读取Xml
我要用一段代码遍历所有Student,并打印Student的所有属性和子节点的值
/*玉开博客 http://www.cnblogs.com/yukaizhao/ */
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;
namespace XmlExample
{
class Program
{
static void Main(string[] args)
{
string xmlFilePath = @"X:\about.net\example\XmlExample\1.xml";
XmlDocument doc = new XmlDocument();
doc.Load(xmlFilePath);
//使用xpath表达式选择文档中所有的student子节点
XmlNodeList studentNodeList = doc.SelectNodes("/students/student");
if (studentNodeList != null)
{
foreach (XmlNode studentNode in studentNodeList)
{
//通过Attributes获得属性名字为name的属性
string name = studentNode.Attributes["name"].Value;
Console.WriteLine("Student:" + name);
//通过SelectSingleNode方法获得当前节点下的courses子节点
XmlNode coursesNode = studentNode.SelectSingleNode("courses");
//通过ChildNodes属性获得courseNode的所有一级子节点
XmlNodeList courseNodeList = coursesNode.ChildNodes;
if (courseNodeList != null)
{
foreach (XmlNode courseNode in courseNodeList)
{
Console.Write("\t");
Console.Write(courseNode.Attributes["name"].Value);
Console.Write("老师评语");
//通过FirstNode属性可以获得课程节点的第一个子节点,LastNode可以获得最后一个子节点
XmlNode teacherCommentNode = courseNode.FirstChild;
//读取CData节点
XmlCDataSection cdata = (XmlCDataSection)teacherCommentNode.FirstChild;
Console.WriteLine(cdata.InnerText.Trim());
}
}Javascript元编程创建DOM节点
}
}
Console.Write("\r\nPress any key to continue....");
Console.Read();
}
}
}
分享到:
相关推荐
简单易懂地介绍C#是如何对XML文件的读写及创建、修改操作的
方便对xml中任意节(多个同名节点)点属性进行获取、设置。 /// /// 设置指定节点的属性 /// /// <param name="xmlContent">xml结构 /// 父节点 /// 父节点所处同名节点的位置 为0表明只有一个该节点 /// ...
它将整个XML文档都先装载进内存中,然后再对XML文档进行操作,所以如果XML文档内容过大,不建议使用XmlDocument类,因为会消耗过多内存。对于很大的XML文档,可以使用XmlReader类来读取。因为XmlReader使用Steam(流...
使用Document读取及写入XML方法 使用XmlTextWriter写入XML方法 使用XmlTextReader读取XML方法 作用SqlCommand.ExecuteXmlReader()取得XML
代码如下:dim domxmldocument as system.xml.xmldocument dim tmppath as string = apptempfilepath dim xmlfile as string = tmppath + “\testxml.xml” ‘窗体加载事件 private sub testxml_load...
如何为xmlDocument类添加事件处理程序,实现对文件数据的监视。。。
里面有三个小例子:使用XmlReader读Xml;使用XmlWriter写Xml;通过XmlDocument读写Xml文档。
我在以前的博客中介绍了如何使用XmlDocument类对XML进行操作,以及如何使用LINQ to XML对XML进行操作。它们分别使用了XmlDocument类和XDocument类。在本文中,我再介绍一个类,XmlTextWriter。我们分别用这三个类将...
”和“&”,对xml来说是禁止使用的,针对这种字符,解决方式是使用CDATA部件以”<![CDATA[” 标记开始,以”]]>”标记结束,是CDATA内部内容被解析器忽略。具体说明参考《XML CDATA是什么?》。 2.内容中含有低位...
xml文件格式如下: <... ”false”> <server>localhost <uid>sa <pwd></pwd> <name>jiayuan 读取节点中的一个属性 XmlDocument doc=new XmlDocument(); doc.Load(“config.xml”);//可
一、C#对XML格式数据的解析 1、用XMLDocument来解析 XmlDocument xmlDocument = new XmlDocument(); xmlDocumentLoad(testxml); //创建新节点 XmlElement nn = xmlDocumentCreateElement(image); nnSetAttribute...
我在前一篇博客中,介绍了如何使用XmlDocument类来对XML文档进行操作。后来 .Net又引入了LINQ,于是LINQ to XML也就应运而生,所以在.Net中,不仅可以用W3C XML DOM标准,还可以使用LINQ to XML来操作XML文档。下面...
之前操作XML文档基本上用的是XmlDocument对象,对一些小文件的操作使用还挺顺手,偶尔用来操作一个4M的XML文件,发现查询指定的节点并删除时执行时间很长。在Web项目下和控制台程序中都出现很长时间程序无响应,并且...
XmlDocument xd = new XmlDocument(); string fileName = @D:\test.xml; xd.Load(fileName); XmlNodeList xmlNoteList = xd.GetElementsByTagName(user); List<User> users = new List(); foreach (XmlElement ...
在.net的项目开发中,经常会对XML文件进行操作,由于XML文件可以实现跨平台传输,较多的应用在数据传输中,特总结以下几种常用的XML操作方法: 1.创建XML文档: /// /// 创建XML文档 /// /// 根节点名称 ///...
XmlDocument doc = new XmlDocument(); //2、创建第一行描述信息 XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null); //3、将创建的第一行描述信息添加到文档中 doc.AppendChild(dec); //...
4. 命名空间(Namespace):命名空间用于避免不同源的XML文档中元素之间的冲突。它通过为标签名称添加前缀来表示所属的命名空间,例如 `<ns:element>`。 5. 注释(Comments):XML还支持添加注释,以便在文档中添加...
已知有一个XML文件(bookstore.xml)如下: 代码如下:<?xml version=”1.0″ encoding=”gb2312″?><bookstore><book ...1、往节点中插入一个节点: 代码如下:XmlDocument xmlDoc=new XmlDocument();xmlDoc.L
主要对XML文件进行加解密。保护重要信息(数据库连接账户和密码等配置信息) //解密XML文件 public static XmlDocument ReadFileXML(string mFilePath) { XmlDocument xmlDoc = new XmlDocument(); try { ...