最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#操作讀取、寫入XML文檔的實(shí)用方法

 更新時(shí)間:2016年04月21日 14:16:55   作者:一個(gè)人的長征  
這篇文章主要介紹了C#操作讀取、寫入XML文檔的實(shí)用方法,即即用.NET本身提供的Deserialize和Serialize進(jìn)行反序列化和序列化XML文檔,感興趣的小伙伴們可以參考一下

本文給大家分享一下C#操作(讀取、寫入)XML文檔的實(shí)用方法,這種方法主要是對(duì)比較規(guī)范的XML文檔進(jìn)行操作,因?yàn)樗╔ML文檔)和類對(duì)象是嚴(yán)格對(duì)應(yīng)的,否則在反序列或序列化的時(shí)候會(huì)出現(xiàn)錯(cuò)誤。其他的不用多說,直接看示例代碼吧:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;

namespace _01XMLSerialize
{
  class Program
  {
    private static List<UserInfo> list = new List<UserInfo>()
    {
      new UserInfo()
      {
        Id = 1,
        UserName = "張三",
        UserPass = "FDASDFAS",
        Email = "zhangsan@163.com",
        RegTime = DateTime.Now
      },
      new UserInfo()
      {
        Id = 2,
        UserName = "李四",
        UserPass = "FDASDFAS",
        Email = "lisi@163.com",
        RegTime = DateTime.Now
      },
      new UserInfo()
      {
        Id = 3,
        UserName = "王五",
        UserPass = "FDASDFAS",
        Email = "wangwu@163.com",
        RegTime = DateTime.Now
      },
      new UserInfo()
      {
        Id = 4,
        UserName = "趙六",
        UserPass = "FDASDFAS",
        Email = "zhaoliu@163.com",
        RegTime = DateTime.Now
      },
      new UserInfo()
      {
        Id = 5,
        UserName = "田七",
        UserPass = "FDASDFAS",
        Email = "tianqi@163.com",
        RegTime = DateTime.Now
      },
      new UserInfo()
      {
        Id = 6,
        UserName = "王八",
        UserPass = "FDASDFAS",
        Email = "wangba@163.com",
        RegTime = DateTime.Now
      }
    };
    static void Main(string[] args)
    {
      //序列化對(duì)象生成文件
      WriteSingleXml();

      //反序列化文件生成對(duì)象
      ReadListXml();

      Console.ReadKey();
    }

    /// <summary>
    /// 從XML文件中反序列化對(duì)象
    /// </summary>
    private static void ReadListXml()
    {
      //反序列化文件
      Console.WriteLine("反序列化XML文件為集合");
      var reader = new XmlSerializer(typeof(List<UserInfo>));

      using (var fs = File.OpenRead("UserInfo.xml"))
      {
        var result = reader.Deserialize(fs) as List<UserInfo>;

        result.ForEach(Console.WriteLine);
      }
      Console.WriteLine("反序列化成功");
    }

    /// <summary>
    /// 序列化對(duì)象到XML文件
    /// </summary>
    private static void WriteSingleXml()
    {
      //序列化集合為xml文件
      Console.WriteLine("序列化集合為XML文件");

      var reader = new XmlSerializer(typeof(List<UserInfo>));
      //寫入文件
      using (var fs = File.OpenWrite("UserInfo.xml"))
      {
        reader.Serialize(fs, list);
      }

      Console.WriteLine("寫入成功");
    }
  }
}

運(yùn)行結(jié)果如圖:

生成的XML文檔如下:

<?xml version="1.0"?>
<ArrayOfUserInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 <UserInfo>
  <Id>1</Id>
  <UserName>張三</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>zhangsan@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
 <UserInfo>
  <Id>2</Id>
  <UserName>李四</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>lisi@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
 <UserInfo>
  <Id>3</Id>
  <UserName>王五</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>wangwu@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
 <UserInfo>
  <Id>4</Id>
  <UserName>趙六</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>zhaoliu@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
 <UserInfo>
  <Id>5</Id>
  <UserName>田七</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>tianqi@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
 <UserInfo>
  <Id>6</Id>
  <UserName>王八</UserName>
  <UserPass>FDASDFAS</UserPass>
  <Email>wangba@163.com</Email>
  <RegTime>2016-04-21T09:15:58.5576551+08:00</RegTime>
 </UserInfo>
</ArrayOfUserInfo>

以上就是本文的全部內(nèi)容,希望對(duì)大家學(xué)習(xí)C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • C# PictureBox圖片控件實(shí)現(xiàn)圖片交換

    C# PictureBox圖片控件實(shí)現(xiàn)圖片交換

    在c#中可以使用PictureBox控件來呈現(xiàn)圖像,本文主要介紹了C# PictureBox實(shí)現(xiàn)圖片交換,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C#使用Excel動(dòng)態(tài)函數(shù)實(shí)現(xiàn)生成依賴列表

    C#使用Excel動(dòng)態(tài)函數(shù)實(shí)現(xiàn)生成依賴列表

    這篇文章主要為大家詳細(xì)介紹了如何在C#中使用?Excel?動(dòng)態(tài)函數(shù)生成依賴列表,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • C#?程序通用結(jié)構(gòu)

    C#?程序通用結(jié)構(gòu)

    這篇文章主要介紹了C#?程序通用結(jié)構(gòu),C#?程序由一個(gè)或多個(gè)文件組成。?每個(gè)文件均包含零個(gè)或多個(gè)命名空間。?一個(gè)命名空間包含類、結(jié)構(gòu)、接口、枚舉、委托等類型或其他命名空間,具體相關(guān)內(nèi)容請(qǐng)需要的小伙伴參考下面文章的詳細(xì)內(nèi)容<BR>
    2021-12-12
  • UnityShader使用速度映射圖實(shí)現(xiàn)運(yùn)動(dòng)模糊

    UnityShader使用速度映射圖實(shí)現(xiàn)運(yùn)動(dòng)模糊

    這篇文章主要為大家詳細(xì)介紹了UnityShader使用速度映射圖實(shí)現(xiàn)運(yùn)動(dòng)模糊,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • C# Datatable的幾種用法小結(jié)

    C# Datatable的幾種用法小結(jié)

    這篇文章主要介紹了C# Datatable的幾種用法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • C#實(shí)現(xiàn)JSON解析器MojoUnityJson功能(簡單且高效)

    C#實(shí)現(xiàn)JSON解析器MojoUnityJson功能(簡單且高效)

    MojoUnityJson 是使用C#實(shí)現(xiàn)的JSON解析器 ,算法思路來自于游戲引擎Mojoc的C語言實(shí)現(xiàn) Json.h。這篇文章主要介紹了C#實(shí)現(xiàn)JSON解析器MojoUnityJson的方法,需要的朋友可以參考下
    2018-01-01
  • C#獲取Word文檔中所有表格的實(shí)現(xiàn)代碼分享

    C#獲取Word文檔中所有表格的實(shí)現(xiàn)代碼分享

    這篇文章主要介紹了C#獲取Word文檔中所有表格的實(shí)現(xiàn)代碼分享,小編親測可用,需要的朋友可以參考下
    2014-09-09
  • C#使用TextBox作數(shù)據(jù)輸入方法

    C#使用TextBox作數(shù)據(jù)輸入方法

    筆者最近需要上位機(jī)與下位機(jī)進(jìn)行數(shù)據(jù)交互,在廣泛參考大佬的資料后,較為完善地使用Textbox控件進(jìn)行數(shù)據(jù)輸入的功能。感興趣的可以了解一下
    2021-06-06
  • C#操作實(shí)現(xiàn)Word全域查找且替換

    C#操作實(shí)現(xiàn)Word全域查找且替換

    這篇文章主要為大家詳細(xì)介紹了C#如何操作實(shí)現(xiàn)Word全域查找且替換功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2024-04-04
  • C#在子線程中更新窗口部件的寫法

    C#在子線程中更新窗口部件的寫法

    這篇文章主要介紹了C#在子線程中更新窗口部件的寫法,本文直接給出代碼示例,需要的朋友可以參考下
    2015-06-06

最新評(píng)論

龙陵县| 西城区| 吐鲁番市| 玉山县| 嘉义市| 台南县| 肥东县| 仙居县| 西乌珠穆沁旗| 虞城县| 垦利县| 休宁县| 霍州市| 秀山| 江西省| 保德县| 三台县| 永泰县| 西盟| 璧山县| 无为县| 边坝县| 景德镇市| 佛教| 宁波市| 盈江县| 太仆寺旗| 乡城县| 密云县| 汉川市| 和田县| 辰溪县| 鄂托克旗| 武宁县| 师宗县| 安国市| 蒙阴县| 鄂尔多斯市| 垫江县| 阿合奇县| 洞头县|