zoukankan      html  css  js  c++  java
  • C# XmlSerializer 序列化,写入文件

    XmlSerializer

      将对象序列化到 XML 文档中和从 XML 文档中反序列化对象,XML 序列化是将对象的公共属性 (Property) 和字段转换为序列格式(这里是指 XML)以便存储或传输的过namespace ConsoleApplication1

    {public class Test
        {
            public string Id { get; set; }
            public string Name { get; set; }
        }
        class Program
        {
            static void Main(string[] args)
            {
                Test t = new Test() { Id="0",Name="00"};
                t.Id = "1";
                t.Name = "hello";
    
    
                string s = SerializeObj<Test>(t);       //把Test类序列化为xml文件
                
    Test tt = DeseriaLizeObj<Test>(s) as Test; //从xml文件,反序列化为Test类,把Id,Name的值赋值为xml中结点Id,Name,的值

    //序列化后,写s入到.txt文本
    //FileStream fs = new FileStream("E:\a.txt", FileMode.Create, FileAccess.Write); //StreamWriter sw = new StreamWriter(fs); //sw.WriteLine(s); //sw.Close(); //fs.Close();
    //从.txt文本读取值,反序列化为Test类 //StreamReader sr
    = new StreamReader("E:\a.txt",Encoding.Default); //string ss; //string sss = ""; //while ((ss = sr.ReadLine()) != null) //{ // sss += ss; // } //sr.Close(); //Test tt = DeseriaLizeObj<Test>(sss) as Test;

    Console.ReadLine(); } static T DeseriaLizeObj<T>(string xml) { XmlSerializer xs = new XmlSerializer(typeof(T)); StringReader sr = new StringReader(xml); object obj = xs.Deserialize(sr); sr.Close(); return (T)obj; } static string SerializeObj<T>(T t) { XmlSerializer xs = new XmlSerializer(typeof(T)); StringWriter sw = new StringWriter(); xs.Serialize(sw, t); return sw.ToString(); } } }
  • 相关阅读:
    HTML基础-3
    HTML基础-2
    HTML基础-1
    hdu 1709 The Balance(母函数)
    hdu 2082 找单词(母函数)
    hdu 1085 Holding Bin-Laden Captive!(母函数)
    hdu 1028 Ignatius and the Princess III(母函数)
    hdu 1027 Ignatius and the Princess II(正、逆康托)
    康托展开、康托逆展开原理
    hdu 4288 Coder(单点操作,查询)
  • 原文地址:https://www.cnblogs.com/wangfei1511/p/3691060.html
Copyright © 2011-2022 走看看