xml基础总结
可扩展的标记语言(eXtensible Markup Language)
XmlDocument doc = new XmlDocument();
2.在内存中创建xml声明
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);
doc.AppendChild(dec);//添加到xml文档上
3.添加根节点
//根节点 Order
XmlElement order = doc.CreateElement("Order");
doc.AppendChild(order);
//创建子节点元素
XmlElement customerName = doc.CreateElement("CustomerName");
customerName.InnerText = "小三";
//追加到父节点order上
order.AppendChild(customerName);
4.添加子节点及属性
XmlElement items = doc.CreateElement("Items");
order.AppendChild(items);
//添加属性
XmlElement orderItem1 = doc.CreateElement("OrderItem");
orderItem1.SetAttribute("Name", "小三");
orderItem1.SetAttribute("Count","");
items.AppendChild(orderItem1);
5.//保存到文件
doc.Save("order.xml");//从内存中保存到xml中
怎么读xml文件 标签没有属性的情况:
XmlDocument doc = new XmlDocument();
//加载xml文件
doc.Load("books.xml");//在这之前要判断文件是否存在
//根节点
XmlElement books = doc.DocumentElement;//找到根节点DocumentElement
//books 下的所有book元素
XmlNodeList xnl = books.ChildNodes;
foreach (XmlNode node in xnl)
{
Console.WriteLine(node.ChildNodes[].InnerText);
Console.WriteLine(node.ChildNodes[].InnerText);
}
有属性的情况:
XmlDocument doc = new XmlDocument();
doc.Load("order.xml");
//根节点
XmlElement root = doc.DocumentElement;
XmlNodeList xnl = root.ChildNodes;
//读取标签的名字
//Console.WriteLine(xnl[0].Name);
Console.WriteLine(xnl[].InnerText);
Console.WriteLine(xnl[].InnerText);
XmlNode items = xnl[];
//orderitem
XmlNodeList xnl1 = items.ChildNodes;
foreach (XmlNode node in xnl1)
{
//获取属性的值
Console.WriteLine(node.Attributes["Name"].Value);
Console.WriteLine(node.Attributes["Count"].Value);
}
修改指定的节点
XmlDocument doc = new XmlDocument();
doc.Load("order.xml");
//修改指定的节点
//XmlNode node = doc.SelectSingleNode("/Order/CustomerName");
//node.InnerText = "小薇";
////Console.WriteLine(node.InnerText);
//doc.Save("order.xml");
//使用xpath 读取指定的节点 此种方式比较方便
//XmlNode node = doc.SelectSingleNode("/Order/CustomerName");
//Console.WriteLine(node.InnerText);
//XmlNodeList xnl = doc.SelectNodes("/Order/Items/OrderItem");
//foreach (XmlNode node in xnl)
//{
// Console.WriteLine(node.Attributes["Name"].Value);
// Console.WriteLine(node.Attributes["Count"].Value);
//}
//根据标签的属性,读取指定的节点
XmlNode node = doc.SelectSingleNode("/Order/Items/OrderItem[@Name='媳妇']");
node.Attributes["Count"].Value = "";
doc.Save("order.xml");
xml基础总结的更多相关文章
- .net学习笔记---xml基础知识
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
- XML 参考:XML基础 XML 简介
XML 参考:XML基础 -- XML简介和用途 转:http://www.cnblogs.com/Dlonghow/archive/2009/01/22/1379799.html XML 参考:XM ...
- XML基础概念
XML基础概念 一.什么是XML. 可扩展标记语言(EXtensible Markup Language),标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. 二.XML特点 1 ...
- xml基础小结
XML基础 1)XML的作用 1.1 作为软件配置文件 1.2 作为小型的“数据库” 2)XML语法(由w3c组织规定的) 标签: 标签名不能以数字开头,中间不能有空格,区分大小写.有且仅有一个根标签 ...
- XML基础<第一篇>
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
- JavaEE XML 基础知识
JavaEE XML 基础知识 @author ixenos 1. XML开头都需要一个声明 <?和?>表明这是一个处理指令 <?xml version=”1.0” encod ...
- JavaWeb学习日记----XML基础
1.XML基础: XML全称为eXtensible Markup Language;即可扩展标记型语言,同HTML一样使用标签来操作.它的可扩展性体现在标签可以由自己定义,可以是中文标签. XML用途 ...
- pom.xml基础配置
pom.xml基础配置: maven中,最让我迷惑的还是那一堆配置! 就拿这个属性配置来说: 我需要让整个项目统一字符集编码,就需要设定 <project.build.sourceEncodin ...
- XML基础+Java解析XML +几种解析方式的性能比较
XML基础+Java解析XML 一:XML基础 XML是什么: 可扩展的标记语言 XML能干什么: 描述数据.存储数据.传输(交换)数据. XML与HTML区别: 目的不一样 XML 被设计用来描述数 ...
- 第一篇 -- XML基础
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
随机推荐
- c#读取excel
Provider根据实际EXCEL的版本来设置,推荐使用ACE接口来读取.需要Access database Engine. 注意修改注册表以下两项的值为0.否则导入EXCEL当单元格内字符长度超过2 ...
- vim快捷键总结
直接上图 原图地址:vim快捷键
- bzoj3514Codechef MARCH14 GERALD07加强版
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- fedora22有时不能启动
[3.327871][drm:intel_set_pch_fifo_underrun_reporting [i915]] *ERROR* uncleared pch fifo underrun on ...
- [iOS 基于CoreBluetooth的蓝牙4.0通讯]
一.首先大致介绍下蓝牙4.0的模式,中心和周边: 一般情况下,iPhone作为中心,接收来自周边传感器(比如手环等)采集的数据. 二.那整一个数据通讯的协议是怎样的呢? 为什么要一层层搞这么复杂呢?据 ...
- Centos7更新firefox
1.用你本地的旧版 firefox,访问http://www.firefox.com.cn,下载Linux版本的Firefox. 2.进入存放下载文件(Firefox-latest-x86_64.ta ...
- django makemigrations的一个特性
Migrations will run the same way on the same dataset and produce consistent results, meaning that wh ...
- resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found.
resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found. 代码: String sql="SELECT d.co ...
- InteropBitmap指定内存,绑定WPF的Imag控件时刷新问题。
1.InteropBitmap指定内存,绑定WPF的Imag控件的Source属性 创建InteropBitmap的时候,像素的格式必须为PixelFormats.Bgr32, 如果不是的话在绑定到I ...
- 理解Docker单机容器网络
在” 理解Docker单机容器网络 “一文中,还有一个Docker容器网络的功能尚未提及,那就是Docker容器的端口映射.即将容器的服务端口P’ 绑定到宿主机的端口P上,最终达到一种效果:外部程序通 ...