XML

发布时间 2023-11-09 09:43:42作者: 费良

XmlDocument 常用属性:

属性描述
XmlAttributeCollection Attributes { get; } 获取当前节点的所有属性引用对象集合
XmlNodeList ChildNodes { get; } 获取子级节点集合
XmlElement DocumentElement { get; } 获取文档的根节点
XmlDocumentType DocumentType { get; } 获取XML文档类型定义
XmlNodeType NodeType { get; } 获取当前节点的类型
XmlDocument OwnerDocument { get; } 获取当前节点所属的 XmlDocument 对象
XmlNode ParentNode { get; } 获取父节点(针对可以拥有父级的节点)
string BaseURI { get; } 获取文档的地址
string InnerText { get; set;} 获取或设置当前节点和子级的文本
string InnerXml { get; set; } 获取或设置子级节点的标签和文本
string LocalName { get; } 获取节点本地名称
string Name { get; } 获取节点限定名称
bool IsReadOnly { get; } 是否只读
bool PreserveWhitespace { get; set; } 获取或设置元素内容是否保留空白区域
XmlNameTable NameTable { get; } 获取关联的 XmlNameTable
IXmlSchemaInfo SchemaInfo { get; } 返回节点的后架构验证信息集 (PSVI)
XmlSchemaSet Schemas { get; set; } 获取或设置与此 XmlDocument 关联的XmlSchemaSet 对象
XmlNode NextSibling { get; } 获取下一个节点(XmlNode)
XmlNode PreviousSibling { get; } 获取上一个节点(XmlNode)
XmlNode PreviousText { get; } 获取该节点之前的文本节点(XmlNode)
XmlNode LastChild { get; } 获取该节点的最后一个子节点(XmlNode)
XmlNode FirstChild { get; } 获取节点的第一个子级(XmlNode)
XmlElement Item[string name] { get; } 获取具有指定Name的第一个子元素 (XmlNode)
string OuterXml { get; } 获取当前节点和子级的标签和文本(XmlNode)
string Prefix { get; set; } 获取或设置该节点的命名空间前缀(XmlNode)
string Value { get; set; } 获取或设置节点的值(XmlNode)
string NamespaceURI { get; } 获取该节点的命名空间 URI(XmlNode)
bool HasChildNodes { get; } 判断该节点下是否有子节点(XmlNode)

XmlDocument 常用方法:

方法描述
XmlElement CreateElement (string name); 创建一个新节点
XmlAttribute CreateAttribute (string name); 创建指定名称的属性
void SetAttribute(string attribute ,string value); 为指定节点的新建属性并赋值
mlNode AppendChild (XmlNode newChild); 为指定节点末尾添加子节点(XmlNode)
XmlAttribute SetAttributeNode(XmlAttribute newAttr); 指定节点添加指定的属性
XmlElement GetElementById (string elementId); 获取具有指定ID的XmlElement
XmlNodeList GetElementsByTagName (string name); 返回一个 XmlNodeList,它包含与指定Name匹配的所有节点的列表,特殊值“*”匹配所有标记
XmlNode ImportNode (XmlNode node, bool deep); 将节点从另一个文档导入到当前文档
XmlNode CreateNode (string nodeType, string name, string namespace); 创建一个节点
XmlNode InsertAfter (XmlNode newChild, XmlNode refChild); 将指定的节点紧接着插入指定的引用节点之后(XmlNode)
XmlNode InsertBefore (XmlNode newChild, XmlNode refChild); 将指定的节点紧接着插入指定的引用节点之前(XmlNode)
void Load (string filename); 从指定的地址加载 XML 文档
void LoadXml (string xml); 从指定的字符串加载 XML 文档
XmlNode PrependChild (XmlNode newChild); 指定的节点添加到该节点的子节点列表的开头(XmlNode)
XmlNode SelectSingleNode (string xpath); 选择一个节点
XmlNodeList SelectNodes (string xpath); 获取同名同级节点集合
void RemoveAll (); 移除当前节点的所有子节点和/或属性(XmlNode)
XmlNode RemoveChild (XmlNode oldChild); 移除指定的子节点(XmlNode)
XmlNode ReplaceChild (XmlNode newChild, XmlNode oldChild); 用新子节点替换旧子节点(XmlNode)
void Save (string filename); 保存XML文件,如果存在指定文件,则此方法会覆盖它

XPath表达式:

表达式描述
nodename 选取此节点的所有子节点
/ 从根节点选取
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
. 选取当前节点
.. 选取当前节点的父节点
@ 选取属性