XML 可扩展标记语言(所有标签都是自己定义,没有固定格式)

如果要给XML规定格式,可以使用dtd (dtd是什么?你不会自己百度吗)

XML主要用来存储数据

XML的要求:
    根节点只能有一个
    每个节点必须结束
 
<student>
<class name="T139">
<student id="" name="张三" />
<student id="" name="李四" />
<student id="" name="王五" />
<student id="" name="赵六" />
</class>
<class name="T138">
<student id="" name="张一" />
<student id="" name="李二" />
<student id="" name="王三" />
<student id="" name="赵四" />
</class>
</student>

要让xml出现在Debug文件夹中,设置属性为“如果较新则复制”

如果较新则复制:只有在直接修改xml文件时才会重新复制,使用代码更改内部时不会重新复制

using system.xml 操作xml的命名空间

xml和html类似,操作html时需要一个文档对象(document),而在xml中是XmlDocument

XmlDocument doc = new XmlDocument();

doc.Load("xml路径"); //读取xml文件

var rootNode = doc.DocumentElement //获取根节点

roodNode.ChildNodes//获取某个节点的子节点

rootNode.Attributes["属性名称"].Value; //获取某个节点中某个属性的值

doc.CreateElement("节点名");//创建一个新节点

rootNode.AppendChild(节点对象);//为某个节点添加一个子节点

doc.CreateAttribte("属性名")//创建一个新属性

Attribte.Value = "值"; //给属性赋值

rootNode.Attributes.Append(属性对象) //给某个节点添加属性

doc.Save("xml路径");//保存到某xml文件中

doc.SelectNodes("XML层级表达式");

XML 层级表达式

"students/class[@name='T139']/Student" //students中所有name为T139的class中的所有Student

linq for xml 用linq的方式查找xml

XML格式的文件最常见的就是配置文件
配置文件中常用的节点
    appSettings 应用程序设置 一些数据较少的细节设置(字体,logo,默认账号)可以不存入数据库,直接写在配置文件,可以提高性能
<appSettings>
<add key="fontcolor" value="red"/>
</appSettings>
ConfigurationManager.AppSettings["fontcolor"] //获取值

C# 基础复习 三 XML操作的更多相关文章

  1. C#常用操作类库三(XML操作类)

    /// <summary> /// XmlHelper 的摘要说明. /// xml操作类 /// </summary> public class XmlHelper { pr ...

  2. MYSQL基础笔记(三)-表操作基础

    数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 ...

  3. Redis基础学习(三)—Key操作

    一.key的相关操作 1.删除 del key1 key2 ... Keyn 作用: 删除1个或多个键. 返回值: 不存在的key忽略掉,返回真正删除的key的数量.   2.重命名 rename k ...

  4. Java基础复习(三)

    1. &和&&的区别. &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则 ...

  5. Python基础学习三 文件操作(一)

    文件读写 r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[不可读: 不存在则创建:存在则只追加内容:] r+,[可读.可写:可追加,如果打开的文件不存 ...

  6. Java基础复习笔记系列 七 IO操作

    Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...

  7. Oracle知识梳理(三)操作篇:SQL基础操作汇总

    Oracle知识梳理(三)操作篇:SQL基础操作汇总 一.表操作 1.表的创建(CREATE TABLE): 基本语句格式:       CREATE TABLE  table_name ( col_ ...

  8. ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )

    //TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...

  9. 基础DOM和CSS操作(三)

    CSS方法 jQuery不但提供了CSS的核心操作方法,比如.css()..addClass()等.还封装了一些特殊功能的CSS操作方法,我们分别来了解一下. width()方法 方法名 描述 wid ...

随机推荐

  1. loadrunner中的常见问题

    1.Loadrunner参数化默认只显示100条数据,我们如何改变呢 E:\Program Files (x86)\HP\LoadRunner\config 2.如何突破loadrunner的Cont ...

  2. [SDOI2016]数字配对(费用流+贪心+trick)

    重点是如何找到可以配对的\(a[i]\)和\(a[j]\). 把\(a[i]\)分解质因数.设\(a[i]\)分解出的质因数的数量为\(cnt[i]\). 设\(a[i]\geq a[j]\) 那么\ ...

  3. Linux磁盘分区--GPT分区

    MBR分区表有一定的局限性,最大支持2.1tb硬盘,单块硬盘最多4个主分区. 这里就要引入GPT分区表,可以支持最大18EB的卷,最多支持128个主分区,所以如果使用大于2tb的卷,就必须使用GTP分 ...

  4. Ubuntu下安装Tensorflow

    本文目录 引言 基于Anaconda的tensorflow安装 1 下载linux版本的Anaconda安装包 2 安装Anaconda 利用anaconda安装tensorflow 1 建立一个 c ...

  5. java8新特性:利用Lambda处理List集合

    Java 8新增的Lambda表达式,我们可以用简洁高效的代码来处理List. 1.遍历 public static void main(String[] args) { List<User&g ...

  6. 【codeforces 805B】3-palindrome

    [题目链接]:http://codeforces.com/contest/805/problem/B [题意] 让你生成一个只包含a,b,c的字符串; 要求c出现的次数最少,且任意一个 长度为3的子串 ...

  7. BA-siemens-insight-event builder使用

    event builder功能主要是用来给report使用的,作为一个独立的对象,这个对象的功能就是收集点位的信息,如果再使用report功能就可以显示或输出点位的信息.

  8. springboot配置容器

    servlet容器配置 Spring Boot快速的原因除了自动配置外,另一个就是将web常用的容器也集成进来并做自动配置,让使用它的人能更快速的搭建web项目,快速的实现自己的业务目的.什么是容器? ...

  9. codeforces 571A--Lengthening Sticks(组合+容斥)

    A. Lengthening Sticks time limit per test 1 second memory limit per test 256 megabytes input standar ...

  10. WebService概述和CXF入门小程序

    一. 什么是WedService? WebService不是框架, 甚至不是一种技术, 而是一种跨平台,跨语言的规范, WebService的出现是为了解决这种需求场景: 不同平台, 不同语言所编写的 ...