zoukankan      html  css  js  c++  java
  • 将对象序列化,反序列化到XML

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Xml.Serialization;
    using Windows.Storage;
    
    namespace List.Model
    {
        public class XmlIO
        {
            public static async Task<T> ReadObjectFromXmlFileAsync<T>(string filePath)
            {
                // this reads XML content from a file ("filePath") and returns an object  from the XML
                T objectFromXml = default(T);
                var serializer = new XmlSerializer(typeof(T));
                StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(filePath));
                Stream stream = await file.OpenStreamForReadAsync();
                objectFromXml = (T)serializer.Deserialize(stream);
                stream.Dispose();
                return objectFromXml;
            }
    
            public static async Task SaveObjectToXml<T>(T objectToSave, string fileName)
            {
                // stores an object in XML format in file called 'filename', in App local folder
                var serializer = new XmlSerializer(typeof(T));
                StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
                Stream stream = await file.OpenStreamForWriteAsync();
    
                using (stream)
                {
                    serializer.Serialize(stream, objectToSave);
                }
            }
    
        }
    }
  • 相关阅读:
    beagle ubuntu
    screen usage
    centos install nginx¢os 添加网易源
    心情舒畅,升级到u10.04了
    nginx 运行,检测
    联通宽带测速
    virtualenv usage
    linux 终端下utf8 和gbk相互转换
    [梦]2005725
    git install on centos
  • 原文地址:https://www.cnblogs.com/qixue/p/5292560.html
Copyright © 2011-2022 走看看