C#操作XML文档---基础
增查改删代码如下
public void CreateXML()
{
XmlDocument xml = new XmlDocument();
xml.AppendChild(xml.CreateXmlDeclaration("1.0", "utf-8", ""));//文档说明
XmlElement root = xml.CreateElement("root");//XML根节点
XmlElement xe = xml.CreateElement("node");//创建数据节点
xe.InnerText = "elementVal";//节点值
xe.SetAttribute("attrName", "attrVal");//节点属性
root.AppendChild(xe);//添加到根节点
xml.AppendChild(root);//添加到XML
xml.Save(Server.MapPath("~/test.xml"));//保存文档
Process.Start(Server.MapPath("~/test.xml"));//使用默认程序打开XML文档
}
public void ReadXML()
{
XmlDocument xml = new XmlDocument();
xml.Load(Server.MapPath("~/test.xml"));//加载XML
XmlElement root = xml.DocumentElement;//获取根节点
XmlNodeList xns = root.ChildNodes;//获取根节点的全部子节点
foreach (XmlNode xn in xns)//遍历节点
{
string[] str = { xn.InnerText, xn.Name };//节点值 节点名
foreach (XmlAttribute attr in xn.Attributes)//遍历节点属性 XmlAttribute继承自XmlNode 取值方法一样
{
}
}
}
public void EditXML()
{
//新增节点或节点属性同CreateXML相关操作
XmlDocument xml = new XmlDocument();
xml.Load(Server.MapPath("~/test.xml"));//加载XML
XmlElement root = xml.DocumentElement;//获取根节点
XmlNodeList xns = root.ChildNodes;//获取根节点的全部子节点
foreach (XmlNode xn in xns)//这里XmlNode也可以直接写成XmlElement
{
xn.InnerText = "newVal";//修改节点值
XmlAttribute attr = xn.Attributes["attrName"];//根据节点属性名名获取节点属性
attr.InnerText = "newAttrVal";//修改节点属性值
}
xml.Save(Server.MapPath("~/test.xml"));//保存文档
Process.Start(Server.MapPath("~/test.xml"));//使用默认程序打开XML文档
}
public void DelXML()
{
XmlDocument xml = new XmlDocument();
xml.Load(Server.MapPath("~/test.xml"));//加载XML
XmlElement root = xml.DocumentElement;//获取根节点
XmlNodeList xns = root.ChildNodes;//获取根节点的全部子节点
foreach (XmlNode xn in xns)
{
root.RemoveAll();//删除全部节点
root.RemoveChild(xn);//删除单个节点
XmlElement xe = (XmlElement)xn;
xe.RemoveAllAttributes();//删除全部节点属性
xe.RemoveAttribute("attrName");//删除单个节点属性
}
xml.Save(Server.MapPath("~/test.xml"));//保存文档
Process.Start(Server.MapPath("~/test.xml"));//使用默认程序打开XML文档
}
C#操作XML文档---基础的更多相关文章
- 操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP)
原文:操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP) 不管是用 PHP 还是 C#, 在操作 XML 的时候我们除了一个节点一个节点去取值之外, 还有一个非常方便的表达式, 就是 ...
- 操作xml文档的常用方式
1.操作XML文档的两种常用方式: 1)使用XmlReader类和XmlWriter类操作 XmlReader是基于数据流的,占用极少的内存,是只读方式的,所以速度极快.只能采用遍历的模式查找数据节点 ...
- 用ORM的思想操作XML文档,一个对象就搞定不要太简单。滚蛋吧!XmlDocument、XmlNode、Xml***……
大家有没有这样的感受,一涉及XML文档操作就得百度一遍.是不是非!常!烦!.各种类型,各种方法,更别提为了找到一个节点多费劲.本来想写个XML操作的工具方法,写了两行一想既然XML文档是有规律的,如果 ...
- C#XmlHelper帮助类操作Xml文档的通用方法汇总
前言 该篇文章主要总结的是自己平时工作中使用频率比较高的Xml文档操作的一些常用方法和收集网上写的比较好的一些通用Xml文档操作的方法(主要包括Xml序列化和反序列化,Xml文件读取,Xml文档节点内 ...
- C#XmlHelper操作Xml文档的帮助类
using System.Xml; using System.Data; namespace DotNet.Utilities { /// <summary> /// Xml的操作公共类 ...
- [XML] C# XmlHelper操作Xml文档的帮助类 (转载)
点击下载 XmlHelper.rar 主要功能如下所示 /// <summary> /// 类说明:XmlHelper /// 编 码 人:苏飞 /// 联系方式:361983679 // ...
- 文档对象模型操作xml文档
简介 :文档对象模型(DOM)是一种用于处理xml文档的API函数集. 2.1文档对象模型概述 按照W3C的定义,DOM是“一种允许程序或脚本动态地访问更新文档内容,结构和样式的.独立于平台和语言的规 ...
- C#操作XML文档(XmlDocument、XmlNode、XmlAttribute、SelectSingleNode、SelectNodes、XmlNodeList)
XML文档是一种通用的文档,这种文档既可以用.config作为后缀也可以用.xml作为后缀.XML文档主要由元素节点和节点的属性共同构成的.它有且仅有一个根节点,其他的节点全部都是根节点的子节点或者子 ...
- dom4j操作xml文档
java Dom4j解析XML文件 标签(空格分隔):java进阶 xml文档: <?xml version="1.0" encoding="UTF-8" ...
随机推荐
- Localstorage本地存储兼容函数
前言HTML5提供了本地存储的API:localstorage对象和sessionStorage对象,实现将数据存储到用户的电脑上.Web存储易于使用.支持大容量(但非无限量)数据同时存储,同时兼容当 ...
- OS X thrift setup
OS X Setup The following command install all the required tools and libraries to build and install t ...
- AndroidStudio创建新项目报错
创建新项目自动执行时报错: Failed to import new Gradle project: failed to find Build Tools revision 17.0.0 Consul ...
- 用.NET开发通用Windows App
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:随着Windows 10的正式发布,作为.NET开发人员应该开始或多或少了解一下通用( ...
- Windows和Windows Phone应用终于可以使用FFmpeg了
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:曾经在Windows Phone上想开发一个支持多种格式的媒体播放器是比较困难的一件事 ...
- 【荐】Spring事务配置的五种方式
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...
- Printf()输出格式控制(转)
int printf(const char *format,[argument]); format 参数输出的格式,定义格式为: %[flags][width][.perc] [F|N|h|l]typ ...
- 编译器 expected unqualified-id before numeric constant 错误
今天调试代码,碰到expected unqualified-id before numeric constant 错误,代码的错误模块出现在一个函数模块上, 奇怪的是这个函数模块之前编译了很多次,也没 ...
- unable to access android sdk add-on list
在bin\properties里添加disable.android.first.run=true
- css与js后边有?v=20160101
原文地址http://blog.csdn.net/zanychou/article/details/8813076 <span style="font-size:14px;" ...