C# XML入门
什么是XML?
XML:可扩展标记语言。
XML的作用:
纯文本,兼容性强。
和HTML的区别:
xml: 主要用来处理、存储数据。无规定标签,可扩展。
html:对数据的显示和描述。 语法标签固定。
XML语法特点:
区分大小写。
只能有一个根节点。
标签成对出现。
属性用双引号。
没有预定标签,用什么写什么
文档声明:<?xml version=".." encoding="...">
注释: <!-- -->
CDATA: 原意文本 <![CDATA[..] ] >
xmldocument 操作:
class Program
{
static void Main(string[] args)
{
//实现xml的写入
//1、在内存中构建Dom对象
XmlDocument xmlDoc = new XmlDocument();
//增加文档说明
XmlDeclaration xmlDeclaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "yes");
xmlDoc.AppendChild(xmlDeclaration);
//增加根元素
// 创建根元素
XmlElement rootElement = xmlDoc.CreateElement("school");
xmlDoc.AppendChild(rootElement);
//3、增加子元素,接下来添加的子元素增加到rootElement节点下
XmlElement xmlClassElement = xmlDoc.CreateElement("class");
// 为class元素添加id属性
XmlAttribute attr = xmlDoc.CreateAttribute("id");
attr.Value = "x01";
xmlClassElement.Attributes.Append(attr);
rootElement.AppendChild(xmlClassElement);
//4、为class创建student节点。
XmlElement xmlStudentElement = xmlDoc.CreateElement("student");
// 为student元素添加sid 属性.
XmlAttribute studentAttr = xmlDoc.CreateAttribute("sid");
studentAttr.Value = "s011";
xmlStudentElement.Attributes.Append(studentAttr);
xmlClassElement.AppendChild(xmlStudentElement);
//student中增加name节点。
XmlElement xmlNameElement = xmlDoc.CreateElement("name");
xmlNameElement.InnerText = "天";
xmlStudentElement.AppendChild(xmlNameElement); //2、将该Dom对象写入xml文件中
xmlDoc.Save("school.xml");
Console.WriteLine("ok");
}
}
以上方法可以用循环写入。
xdocument 操作。
class Program
{
static void Main(string[] args)
{
// 通过xdocument 写入文件
List<Person> list = new List<Person>();
list.Add(new Person() { Name = "Sam", Age = });
list.Add(new Person() { Name = "Penny", Age = });
// 1、 创建Dom对象。
XDocument xDoc = new XDocument();
XDeclaration xDec = new XDeclaration("1.0", "utf-8", null);
// 设置文档定义
xDoc.Declaration = xDec;
//2、创建根节点
XElement rootElement = new XElement("List");
xDoc.Add(rootElement);
//3、循环创建节点
for (int i = ; i < list.Count; i++)
{
XElement PersonElement = new XElement("Person");
PersonElement.SetAttributeValue("id", (i + ).ToString()); PersonElement.SetElementValue("Name", list[i].Name);
PersonElement.SetElementValue("Age", list[i].Age);
rootElement.Add(PersonElement);
}
xDoc.Save("List.xml");
Console.WriteLine("ok");
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
//读取XML文件。
XDocument document = XDocument.Load("List.xml");
XElement rootElement = document.Root;
Console.WriteLine("订购人:{0}",rootElement.Element("CustomerName").Value);
foreach (var item in rootElement.Element("Items").Elements("OrderItem"))
{
Console.WriteLine("商品名称:{0}",item.Attribute("Name").Value);
} }
}
C# XML入门的更多相关文章
- sql xml 入门
/*sql xml 入门: --by jinjazz --http://blog.csdn.net/jinjazz 1.xml: 能认识元素.属性和值 ...
- xml入门简介--两天学会xml
前言 在很久以前,笔者曾见到过1000+页的xml书,里面还有n多的概念,XSL,Xquery,让人头痛.无奈最近需要用到,所以在w3c恶补了一下.以下大致整理了一下相关概念,但是对XSL等派生语言没 ...
- XML学习总结(二)——XML入门
XML学习总结(二)——XML入门 一.XML语法学习 学习XML语法的目的就是编写XML 一个XML文件分为如下几部分内容: 文档声明 元素 属性 注释 CDATA区 .特殊字符 处理指令(proc ...
- xml入门与解析
xml入门与解析 1.xml基础知识 xml:可扩展的标签语言,标签自定义. 作用:存储数据.(配置文件) 书写规范: 1.区分大小写 2.应该有一个根标签 3.标签必须关闭 <xx>&l ...
- XML 入门 - XML 系统教程(1)
XML (Extensible Markup Language)指可扩展标记语言. 组成 <?xml version="1.0" encoding="UTF-8&q ...
- XML入门介绍
目录 XML 简介 xml 语法 文档声明 (1)创建一个 xml 文件 (2)图书有 id 性 属性 一 表示唯一 标识,书名,有作者,价格的信息 xml 注释 元素(标签) 1)什么是 xml 元 ...
- xml入门
1.why xml? 如果说JSON是一种轻量级的数据交换格式,那么xml就是重量级的.xml应用于web开发的许多方面,常用于简化数据的存储和共享.永远要记住,xml跟JSON一样是用来存储和传输数 ...
- XMl入门介绍及php操作XML
一.什么是XML XML全称:Extensible Markup Language 中文名:可扩展标记语言 用于标记电子文件使其具有结构性的标记语言,可以用来标记数据,定义数据类型,允许用户对自己的标 ...
- Javaweb入门20160301 ---xml入门
一.xml语法 1.文档声明 用来声明xml的基本属性,用来指挥解析引擎如何去解析当前xml 通常一个xml都要包含并且只能包含一个文档声明 xml的文档必须在整个xml的最前面,在文档声明之前不能有 ...
- FusionCharts xml入门教程
由于项目需求需要做一个报表,选择FusionCharts作为工具使用.由于以 前没有接触过报表,网上也没有比较详细的fusionCharts教程,所以决定好好研究FusionCharts,同时做一个比 ...
随机推荐
- css之absolute温习
1.absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.(父元素不仅可以是相对定位(relative)) 2.当绝对定位的元素找不到定位类型是非static定位 ...
- _ZNote_Qt_QDialog_修改button名称
#include <QPushButton> ui->buttonBox->button(QDialogButtonBox::Ok)->setText("Run ...
- 命令行方式登录PostgreSQL
目录: 一.在默认配置条件下,本机访问PostgreSQL 二.创建新用户来访问PostgreSQL 三.最简单的做法 四.开启远程访问 一.在默认配置条件下,本机访问PostgreSQL 切换到Li ...
- ServiceStack.Redis记录
一.事务 (一)AcquireLock方法 1.说明:申请对一个Key加锁(期间其他对象不能访问). 2.带using的使用,或带过期时间参数,否则锁不会自动释放. using (RedisCache ...
- 笔记:Zygote和SystemServer进程启动过程
简述 Android设备启动过程中,先是Linux内核加载完,接着Android中的第一个进程init启动,它会启动一些需要开机启动的进程. Zygote就是进程init启动起来的.Android中所 ...
- 8.快速索引、listview
实现这样的效果 布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- 每天学点SpringCloud(十二):Zipkin全链路监控
Zipkin是SpringCloud官方推荐的一款分布式链路监控的组件,使用它我们可以得知每一个请求所经过的节点以及耗时等信息,并且它对代码无任何侵入,我们先来看一下Zipkin给我们提供的UI界面都 ...
- Git使用详细教程(2):配置用户名和邮箱
首先,说下最常用的设置用户名和邮箱的命令 git config --global user.name 'xxx' //设置用户名 git config --global user.email 'xxx ...
- JDK 在 Linux 上安装的详细过程
1.下载JDK Linux上一般会安装Open JDK,如果有系统预装了OpenJDK的话需要先卸载掉OpenJDK, 卸载过程可以参考这里:https://www.cnblogs.com/sxdcg ...
- Eclipse 中构建 Maven 项目的完整过程 - 动态 Web 项目
进行以下步骤的前提是你已经安装好本地maven库和eclipse中的maven插件了(有的eclipse中已经集成了maven插件) 一.Maven项目的新建 1.鼠标右键---->New--- ...