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( ...
随机推荐
- kettle菜鸟学习笔记1----相关准备知识
最近导师让给师弟师妹做个关于kettle的培训,瞬间囧了,kettle我也只是简单学过,连皮毛都算不上,而且,上次使用kettle已然是去年的事了…… 没办法,只好重新学习下,好在之前写了几个文档,也 ...
- hihocoder#1054 : 滑动解锁(深度优先搜索)
描述 滑动解锁是智能手机一项常用的功能.你需要在3x3的点阵上,从任意一个点开始,反复移动到一个尚未经过的"相邻"的点.这些划过的点所组成的有向折线,如果与预设的折线在图案.方向上 ...
- opensuse pptp拨号设置注意事项
防火墙一定要关闭 路由器要映射本地1723和1701端口 tcp协议(个别路由器和网络环境,可以先不设置) pptp配置注意协议的选择:
- Jmail发送邮件与带附件乱码解决办法
Jamil发送邮件的具体用法: 首先,我们要从网上下载Jamil.dll的组件,这个网上很多,然后添加引用using jmail,然后再本机或者服务器上注册一下 将jmail.dll拷贝到服务器的sy ...
- iOS 之单例,代理,通知,KVO,Block全能解析
//单例 //.h + (Instannce *)shareInstance; //.m static Instannce *instance = nil; @implementation Insta ...
- 嵌入式 linux 移植修改后的libjpeg 实现内存中解码
1.修改libjpeg源码,使之实现内存解码. 修改libjpeg中读取或者输出jpeg文件的函数接口文件jdatadst.c和jdatasrc.c见下面这篇帖子. http://blog.163.c ...
- 《squid网卡代理的实现》RHEL6.3——条理清晰,步骤明确
网卡的代理和FQ差不多一个道理.ping 不通不代表不能上网. 实验的目的: 打开2台虚拟主机,一台2个网卡(这台为服务器):一台一个网卡: 2块网卡的服务器使用静态ip可以上网,也就是说网段为1的可 ...
- FPGA统计摄像头输出-基于MD9T112
FPGA HDL源程序 FPGA统计摄像头的输出像素,窗口尺寸等等 //---------------------------------------------------------------- ...
- VMware虚拟机中设置端口映射(转载)
VMware Workstation提供了两种虚拟机上网方式,一种bridge,一种NAT,bridge可以获得公网地址,而NAT只能是内网地址了. NAT相当于把主机当成了一个NAT转换器,我们可以 ...
- 实现简单的cp命令
在Linux下实现简单的cp命令.这是<APUE>第四章的其中一道练习题. 其实思路很简单,弄清规则就行了.规则1:源文件必须得存在,否则出错:规则2:目的文件若不存在则创建,若存在,则提 ...