1.XML概述:

可扩展标记语言XML(eXtensible Markup Language)是一种简单灵活的文本格式的可扩展标记语言,侧重于存储数据。

2.XML特点

xml 标记语言 html 
xml 侧重于存储数据   html显示数据

注释<!-- 注释 -->

xml没有预定义标签  html有

核心类XElement,一个XElement表示一个元素,new XElement(“Order”),创建一个名字为Order的标签,调用Add增加子元素,也是XElement 对象,和TreeView一样。

3.创建XML

  private void button1_Click(object sender, EventArgs e)

         {

             //创建XDocument实例

             XDocument doc =new XDocument();

             //创建根元素

             XElement root=new XElement("Person");

             XElement stu1=new XElement("student");

             //设置根元素的id属性

             stu1.SetAttributeValue("id",);

             //设置子元素的值

             stu1.SetElementValue("name","卡卡西");

             stu1.SetElementValue("gender","男");

             stu1.SetElementValue("Age",);

             //把子元素添加到根元素里

             root.Add(stu1);

             XElement stu2 = new XElement("student");

             stu2.SetAttributeValue("id", );

             stu2.SetElementValue("name", "鸣人");

             stu2.SetElementValue("gender", "男");

             stu2.SetElementValue("Age", );

             root.Add(stu2);

             //把根元素加到XDocument实例

             doc.Add(root);

             //打开保存文件对话框,设置相应的打开样式

             SaveFileDialog sfd=new SaveFileDialog() {Filter = "xml文件(*.xml)|*.xml|所有文件|*.*",Title = "保存文件",FileName = "保存",DefaultExt = "xml",AddExtension = true,InitialDirectory = @"C:\Users\LWP1398\Desktop" };

             if (sfd.ShowDialog()==DialogResult.OK)

             {

                 doc.Save(sfd.FileName);

             }

             MessageBox.Show("ok");

         }

3.1创建好的文件

4.读取xml

   private void button2_Click(object sender, EventArgs e)

         {

             //打开文件对话框

             OpenFileDialog ofd=new OpenFileDialog() {Filter = "xml文件(*.xml)|*.xml|所有文件(*.*)|*.xml",InitialDirectory = @"C:\Users\LWP1398\Desktop",Title = "打开文件"};

             if (ofd.ShowDialog() == DialogResult.OK)

             {

                 //加载xml文件

                 XDocument doc=XDocument.Load(ofd.FileName);

                 //得到根元素

                 XElement root = doc.Root;

                 //得到根元素下的子元素

                 var eles = root.Elements();

                 //循环遍历每个子元素

                 foreach (XElement item in eles)

                 {

                     //把子元素的信息加到文本框中

                     txtStu.AppendText(item.Name + "===" + item.Attribute("id").Value + "\r\n"); 

                     //循环遍历每个子元素中的信息                  

                     foreach (XElement stu in item.Elements())

                     {

                         txtStu.AppendText(stu.Name + "===" + stu.Value + "\r\n");                        

                     }

                 }

             }

             MessageBox.Show("ok");

         }

4.1读取结果

C#基础精华06(Linq To XML,读取xml文件,写入xml)的更多相关文章

  1. C#使用Linq to csv读取.csv文件数据

    前言:今日遇到了一个需要读取CSV文件类型的EXCEL文档数据的问题,原本使用NPOI的解决方案直接读取文档数据,最后失败了,主要是文件的类型版本等信息不兼容导致.其他同事有使用linq to csv ...

  2. 【XML】利用Dom4j读取XML文档以及写入XML文档

    Dom4j简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它的性能 ...

  3. xml读取 避开并发(xml的一些操作)

    很多地方读取文件可能会出现并发现象 处理: 使用FileMode.Open, FileAccess.Read, FileShare.ReadWrite 避开并发 public static List& ...

  4. maven src/test/resources 下的logback-test.xml 读取 properties文件中的key-value值

    <profiles>        <profile>            <id>test-cd</id>            <prope ...

  5. C#使用Linq to csv读取.csv文件数据2_处理含有非列名数据的方法(说明信息等)

    第一篇博客为:https://www.cnblogs.com/lxhbky/p/11884474.html 本文主要是为了解决上面博客遗留的一个含有不规范数据的一种方法,目前暂时没有从包里发现可以从第 ...

  6. 基础补充:使用xlrd模块读取excel文件

    因为接口测试用例使用excel文件来维护的,所以有必要学习下操作excel的基本方法 参考博客:python 3 操作 excel 把自己练习的代码贴出来,是一些基本的操作,每行代码后面都加了注释. ...

  7. java读取数据写入txt文件并将读取txt文件写入另外一个表

    package com.xsw.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.F ...

  8. php逐行读取txt文件写入数组的方法

    使用说明: 采用fopen 方法,逐行读取数据,并使用feof($fp)  判断是否文件截止,最后通过filter() 方法,去除空白行,得到所需数据 $file = fopen("user ...

  9. Android:Xml(读取与存储)

    1.读取XML文件 参数xml是建含xml数据的输入流,List<Person> persons用于存储xml流中的数据. XmlPullParser类的几个方法:next(),nextT ...

随机推荐

  1. Linux 进行反编译 或者 汇编

    Linux 进行反编译 或者 汇编 一.需要的工具 1.objdump 2. 3.

  2. Sublime Text 破解

    引言 放假三天,呆家里把win7换成了win8.1,接着玩起了hyperv,试着装了个windows xp虚拟机,体验很不错.不过对linux系统的支持不怎么样,装了个ubuntu,体验相当差!闲着无 ...

  3. Poj 2109 / OpenJudge 2109 Power of Cryptography

    1.Link: http://poj.org/problem?id=2109 http://bailian.openjudge.cn/practice/2109/ 2.Content: Power o ...

  4. Hits算法

    HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell University ) 的Jon Kleinberg 博士于1997 ...

  5. CentOs Linux 分区建议

    硬盘分区方案 在计算机上安装Linux系统,对硬盘进行分区是一个非常重要的步骤,下面介绍几个分区方案. (1)方案1(桌面)/boot:用来存放与Linux系统启动有关的程序,比如启动引导装载程序等, ...

  6. 操作xml文档的常用方式

    1.操作XML文档的两种常用方式: 1)使用XmlReader类和XmlWriter类操作 XmlReader是基于数据流的,占用极少的内存,是只读方式的,所以速度极快.只能采用遍历的模式查找数据节点 ...

  7. linux计划任务运行php文件的方法分享

    在linux下,借助crontab,设置计划任务每天6点10分执行filename.php文件,写入一行时间到log日志中. 创建计划任务的脚本: dos2unix /path/to/filename ...

  8. DB2 SQL 递归实现多行合并

    最终效果 原始数据: 转换脚本: WITH post_a AS ( SELECT DISTINCT T.EMP_NO,S.CODE_ FROM inscndb.DTFMA000_EMP_POST T ...

  9. 九度OJ做题记录 更新.....

    2015年1月7日 20:34:23  题目1007:奥运排序问题 有点意思,以后想另外方法快速做出来 2015年1月7日 21:03:56 有一个技巧就是,写了三个比较函数cmp1,cmp2,cmp ...

  10. ARCGIS 10中添加excel点字段生产点shp文件的工具

    菜单栏中——文件——添加数据——添加XY数据——选择excel。 选择x,y和投影(注意这里投影应该是原数据的本身投影,不能直接选择你要转换的投影)完成。