C# XML - XmlDocument
http://msdn.microsoft.com/zh-cn/library/System.Xml.XmlDocument(v=vs.80).aspx
1.member
http://msdn.microsoft.com/zh-cn/library/system.xml.xmldocument_members(v=vs.80).aspx
名称 | 说明 | |
---|---|---|
Attributes | 获取一个 XmlAttributeCollection,它包含该节点的属性。(从 XmlNode 继承。) | |
BaseURI | 已重写。获取当前节点的基 URI。 | |
ChildNodes | 获取节点的所有子节点。(从 XmlNode 继承。) | |
DocumentElement | 获取文档的根 XmlElement。 | |
DocumentType | 获取包含 DOCTYPE 声明的节点。 | |
FirstChild | 获取节点的第一个子级。(从 XmlNode 继承。) | |
HasChildNodes | 获取一个值,该值指示节点是否有任何子节点。(从 XmlNode 继承。) | |
Implementation | 获取当前文档的 XmlImplementation 对象。 | |
InnerText | 获取或设置节点及其所有子节点的串联值。(从 XmlNode 继承。) | |
InnerXml | 已重写。获取或设置表示当前节点子级的标记。 | |
IsReadOnly | 已重写。获取一个值,该值指示当前节点是否是只读的。 | |
Item | 已重载。获取指定的子元素。(从 XmlNode 继承。) | |
LastChild | 获取节点的最后一个子级。(从 XmlNode 继承。) | |
LocalName | 已重写。获取节点的本地名称。 | |
Name | 已重写。获取节点的限定名。 | |
NamespaceURI | 获取该节点的命名空间 URI。(从 XmlNode 继承。) | |
NameTable | 获取与此实现关联的 XmlNameTable。 | |
NextSibling | 获取紧接在该节点之后的节点。(从 XmlNode 继承。) | |
NodeType | 已重写。获取当前节点的类型。 | |
OuterXml | 获取表示此节点及其所有子节点的标记。(从 XmlNode 继承。) | |
OwnerDocument | 已重写。获取当前节点所属的 XmlDocument。 | |
ParentNode | 已重写。获取该节点(对于可以具有父级的节点)的父级。 | |
Prefix | 获取或设置该节点的命名空间前缀。(从 XmlNode 继承。) | |
PreserveWhitespace | 获取或设置一个值,该值指示是否在元素内容中保留空白。 | |
PreviousSibling | 获取紧接在该节点之前的节点。(从 XmlNode 继承。) | |
SchemaInfo | 已重写。返回节点的后架构验证信息集 (PSVI)。 | |
Schemas | 获取或设置与此 XmlDocument 关联的 XmlSchemaSet 对象。 | |
Value | 获取或设置节点的值。(从 XmlNode 继承。) | |
XmlResolver | 设置 XmlResolver 以用于解析外部资源。 |
2. function
名称 | 说明 | |
---|---|---|
AppendChild | 将指定的节点添加到该节点的子节点列表的末尾。 (从 XmlNode 继承。) | |
Clone | 创建此节点的一个副本。 (从 XmlNode 继承。) | |
CloneNode | 已重写。 创建此节点的一个副本。 | |
CreateAttribute | 已重载。 创建具有指定名称的 XmlAttribute。 | |
CreateCDataSection | 创建包含指定数据的 XmlCDataSection。 | |
CreateComment | 创建包含指定数据的 XmlComment。 | |
CreateDocumentFragment | 创建 XmlDocumentFragment。 | |
CreateDocumentType | 返回新的 XmlDocumentType 对象。 | |
CreateElement | 已重载。 创建 XmlElement。 | |
CreateEntityReference | 创建具有指定名称的 XmlEntityReference。 | |
CreateNavigator | 已重载。 已重写。 创建一个用于导航此文档的新 XPathNavigator 对象。 | |
CreateNode | 已重载。 创建 XmlNode。 | |
CreateProcessingInstruction | 创建一个具有指定名称和数据的 XmlProcessingInstruction。 | |
CreateSignificantWhitespace | 创建一个 XmlSignificantWhitespace 节点。 | |
CreateTextNode | 创建具有指定文本的 XmlText。 | |
CreateWhitespace | 创建一个 XmlWhitespace 节点。 | |
CreateXmlDeclaration | 创建一个具有指定值的 XmlDeclaration 节点。 | |
Equals | 已重载。 确定两个 Object 实例是否相等。 (从 Object 继承。) | |
GetElementById | 获取具有指定 ID 的 XmlElement。 | |
GetElementsByTagName | 已重载。 返回一个 XmlNodeList,它包含与指定名称匹配的所有子代元素的列表。 | |
GetEnumerator | 提供对 XmlNode 中节点上“for each”样式迭代的支持。 (从 XmlNode 继承。) | |
GetHashCode | 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。) | |
GetNamespaceOfPrefix | 查找当前节点范围内离给定的前缀最近的 xmlns 声明,并返回声明中的命名空间 URI。 (从 XmlNode 继承。) | |
GetPrefixOfNamespace | 查找当前节点范围内离给定的命名空间 URI 最近的 xmlns 声明,并返回声明中定义的前缀。 (从 XmlNode 继承。) | |
GetType | 获取当前实例的 Type。 (从 Object 继承。) | |
ImportNode | 将节点从另一个文档导入到当前文档。 | |
InsertAfter | 将指定的节点紧接着插入指定的引用节点之后。 (从 XmlNode 继承。) | |
InsertBefore | 将指定的节点紧接着插入指定的引用节点之前。 (从 XmlNode 继承。) | |
Load | 已重载。 加载指定的 XML 数据。 | |
LoadXml | 从指定的字符串加载 XML 文档。 | |
Normalize | 将此 XmlNode 下子树完全深度中的所有 XmlText 节点都转换成“正常”形式,在这种形式中只有标记(即标记、注释、处理指令、CDATA 节和实体引用)分隔 XmlText 节点,也就是说,没有相邻的 XmlText 节点。 (从 XmlNode 继承。) | |
PrependChild | 将指定的节点添加到该节点的子节点列表的开头。 (从 XmlNode 继承。) | |
ReadNode | 根据 XmlReader 中的信息创建一个 XmlNode 对象。读取器必须定位在节点或属性上。 | |
ReferenceEquals | 确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。) | |
RemoveAll | 移除当前节点的所有子节点和/或属性。 (从 XmlNode 继承。) | |
RemoveChild | 移除指定的子节点。 (从 XmlNode 继承。) | |
ReplaceChild | 用 newChild 节点替换子节点 oldChild。 (从 XmlNode 继承。) | |
Save | 已重载。 将 XML 文档保存到指定的位置。 | |
SelectNodes | 已重载。 选择匹配 XPath 表达式的节点列表。 (从 XmlNode 继承。) | |
SelectSingleNode | 已重载。 选择匹配 XPath 表达式的第一个 XmlNode。 (从 XmlNode 继承。) | |
Supports | 测试 DOM 实现是否实现特定的功能。 (从 XmlNode 继承。) | |
ToString | 返回表示当前 Object 的 String。 (从 Object 继承。) | |
Validate | 已重载。 验证 XmlDocument 是不是 Schemas 属性中包含的 XML 架构定义语言 (XSD) 架构。 | |
WriteContentTo | 已重写。 将 XmlDocument 节点的所有子级保存到指定的 XmlWriter 中。 | |
WriteTo | 已重写。 将 XmlDocument 节点保存到指定的 XmlWriter。 |
3. example
private void button1_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(@"..\..\CD.xml"); XmlElement root = null;
root = doc.DocumentElement; XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("ab", "http://www.lucernepublishing.com"); XmlNodeList listNodes = null;
listNodes = doc.SelectNodes("/ab:bookstore/ab:book[ab:author[ab:sex]]/ab:price", nsmgr);
foreach (XmlNode node in listNodes )
{
richTextBox1.Text += node.InnerText + "\n";
}
}
example 2 - insert node
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
XmlElement xe1=xmlDoc.CreateElement("book");//创建一个<book>节点
xe1.SetAttribute("genre","李赞红");//设置该节点genre属性
xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性 XmlElement xesub1=xmlDoc.CreateElement("title");
xesub1.InnerText="CS从入门到精通";//设置文本节点
xe1.AppendChild(xesub1);//添加到<book>节点中
XmlElement xesub2=xmlDoc.CreateElement("author");
xesub2.InnerText="候捷";
xe1.AppendChild(xesub2);
XmlElement xesub3=xmlDoc.CreateElement("price");
xesub3.InnerText="58.3";
xe1.AppendChild(xesub3); root.AppendChild(xe1);//添加到<bookstore>节点中
xmlDoc.Save("bookstore.xml");
example 3- modify
XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点
foreach(XmlNode xn in nodeList)//遍历所有子节点
{
XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("genre")=="李赞红")//如果genre属性值为“李赞红”
{
xe.SetAttribute("genre","update李赞红");//则修改该属性为“update李赞红” XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历
{
XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="author")//如果找到
{
xe2.InnerText="亚胜";//则修改
break;//找到退出来就可以了
}
}
break;
}
} xmlDoc.Save("bookstore.xml");//保存。
C# XML - XmlDocument的更多相关文章
- C#(1):XML DOM、System.Xml.XmlDocument
一.XML DOM概述 XML 文档大小写敏感.属性用引号括起来,每一个标记都要闭合. DOM是XML文档的内存中树状的表示形式. 继承关系图: XmlNode;//XML节点 ......Xml ...
- C# XML,XmlDocument简单操作实例
private static string _Store = LocalPathHelper.CurrentSolutionPath + "/data/bookstore.xml" ...
- C#操作Xml:通过XmlDocument读写Xml文档
什么是Xml? Xml是扩展标记语言的简写,是一种开发的文本格式.关于它的更多情况可以通过w3组织了解http://www.w3.org/TR/1998/REC-xml-19980210.如果你不知道 ...
- xml字符串转为XmlDocument
string xml = "<xml><logistics_express_get_respose><express_detail><company ...
- C# -- 使用XmlDocument或XDocument创建xml文件
使用XmlDocument或XDocument创建xml文件 需引用:System.Xml; System.Xml.Linq; 1.使用XmlDocument创建xml(入门案例) static vo ...
- XML 读写(XmlDocument、XPathNavigator、XDocument)
内存中的 XML 处理 基于流的 XML 处理提供了最小的负载,但也只提供了最小的灵活性.在很多 XML 处理场景里,你不会在这么低的层次下工作. 对内存中的 XML 的处理则更加方便,但没有单一.标 ...
- 通过XmlDocument读写Xml文档参考地址
/// <summary> /// 获取一个报表的参数 http://blog.csdn.net/hdhai9451/article/details/12170069 /// </s ...
- 一、XML DOM、XMLDocument
一.XML DOM概述 XML 文档大小写敏感.属性用引号括起来,每一个标记都要闭合. DOM是XML文档的内存中树状的表示形式. 继承关系图: XmlNode;//XML节点 ......XmlDo ...
- xml
//写入XML文件 public static void SavetoXml(List<ProxyEntity> proxys) { string path = Path.Combine( ...
随机推荐
- Android OpenGL ES(二)----平滑着色
直线或者三角形上的每个片段混合后的颜色可以用一个varying生成.我们不仅能混合颜色,还可以给varying传递任何值,OpenGL会选择属于那条直线的两个值,或者属于那个三角形的三个值,并平滑地在 ...
- DDL、DML和DCL的理解
一.DDL 1.DDL的概述 DDL(Data Definition Language 数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表.视图等等, ...
- 1 ubuntu下装setuptools
setuptools可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况,分享以下我在ubuntu下装setuptools的过程 系统:ubuntu 语言:python ...
- Chromium浏览器高级开发系列第一篇:如何获取最新chromium源码
背景: 最近摊上一个事儿,领导非要让写一篇技术文章,思来想去,自己接触chrome浏览器时间也不短了,干脆就总结一下吧.于是乎,本文顺理成章.由于有些细节必需描述清楚,所以这次先讲如何拿到ch ...
- mysql数据库用户和权限管理记录
一.MySQL用户的基本说明: 1.1 用户的基本结构MySQL的用户:用户名@主机 ■用户名:16个字符以内■主机:可以是主机名.IP地址.网络地址等主机名:www.111cn.net,localh ...
- STP详解
STP详解 Write From YangWj Wednesday, March 5, 2014 一. 生成树协议 STP的主要任务是阻止在第2层网络(网桥或交换机)产生网络环路,它警惕的监视着网络中 ...
- js正则表达式的验证示例
//验证邮箱的JS正则 <script type="text/javascript"> $(function() { $("#inputemail" ...
- /mnt /media /dev 目录区别
/mnt 是被系统管理员使用,手动挂载一些临时媒体设备的目录. /medai 是自动挂载的目录,比如我们的U盘插在ubuntu下回自动挂载,就会在/media下生成一个目录,这个目录就是U盘所在目录, ...
- (转)Linux性能调优之虚拟内存篇
简单地说,虚拟内存就是硬盘中的一块区域,它用来存放内存里使用频率不高的页面文件.好处是为了提高内存的利用率 - 让使用频率高的页面文件活动在内存区域中,提高CPU对数据操作的速度.在Linux中,这个 ...
- 济南学习 Day2 T2 am
[问题描述]有N个数,随机选择一段区间,如果这段区间的所有数的平均值在[l,r]中则你比较厉害.求你比较厉害的概率.[输入格式]第一行有三个数N,l,r,含义如上描述.接下来一行有