SmartSQL/SmartSQL.Framework/Util/SerializeHelper.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Text;
using System.IO;
using System.Xml.Serialization;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Json;

namespace SmartSQL.Framework.Util
{
    public class SerializeHelper
    {
        public static void XmlSerialize<T>(T obj, string fileName)
        {
            XmlSerialize(obj, fileName, Encoding.UTF8);
        }

        public static void XmlSerialize<T>(T obj, string fileName,Encoding encoding)
        {
            var xmlns = new XmlSerializerNamespaces();
            xmlns.Add(String.Empty, String.Empty); 
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            StreamWriter writer = new StreamWriter(fileName, false, encoding);
            serializer.Serialize(writer, obj, xmlns);
            writer.Close();
        }

        public static string XmlSerialize<T>(T obj)
        {
            return XmlSerialize(obj, Encoding.UTF8);
        }

        public static string XmlSerialize<T>(T obj,Encoding encoding)
        {
            var xmlns = new XmlSerializerNamespaces();
            xmlns.Add(String.Empty, String.Empty); 
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            MemoryStream stream = new MemoryStream();
            serializer.Serialize(stream, obj, xmlns);
            stream.Position = 0;

            StreamReader sr = new StreamReader(stream, encoding);
            string resultStr = sr.ReadToEnd();
            sr.Close();
            stream.Close();

            return resultStr;
        }

        public static T XmlDeserialize<T>(string fileName)
        {
            return XmlDeserialize<T>(fileName, Encoding.UTF8);
        }

        public static T XmlDeserialize<T>(string fileName, Encoding encoding)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(T));
            StreamReader reader = new StreamReader(fileName, encoding);
            T obj = (T)serializer.Deserialize(reader);
            reader.Close();

后面还有 79 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读 AI

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。