C# jsonxml序列化

Posted 小小七爷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# jsonxml序列化相关的知识,希望对你有一定的参考价值。

  json序列化:

 

        public static string SerializeJson<T>(T json)
        {
            // 1. 需要添加引用 Newtonsoft.Json.dll,默认为 Json.NET
            return Newtonsoft.Json.JsonConvert.SerializeObject(json);

            // 2. 需要添加引用 System.Web.Extensions,然后添加命名空间 System.Web.Script.Serialization;
            //return new javascriptSerializer().Serialize(json);
        }
        public static T DeserializeJson<T>(string json)
        {
            return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(json);

            //JavaScriptSerializer Serializer = new JavaScriptSerializer();
            //return Serializer.Deserialize<T>(json);
        }

  XML序列化:

  public static string ToXml<T>(T item)
        {
            XmlSerializer xmlSerializer = new XmlSerializer(item.GetType());
            StringBuilder stringBuilder = new StringBuilder();
            string result;
            using (XmlWriter xmlWriter = XmlWriter.Create(stringBuilder))
            {
                xmlSerializer.Serialize(xmlWriter, item);
                result = stringBuilder.ToString();
            }
            return result;
        }
        public static T FromXml<T>(string str)
        {
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
            T result;
            using (XmlReader xmlReader = new XmlTextReader(new StringReader(str)))
            {
                result = (T)((object)xmlSerializer.Deserialize(xmlReader));
            }
            return result;
        }

 

以上是关于C# jsonxml序列化的主要内容,如果未能解决你的问题,请参考以下文章

C# 最有用的(自定义)代码片段是啥? [关闭]

c#代码片段快速构建代码

此 Canon SDK C++ 代码片段的等效 C# 代码是啥?

是否可以动态编译和执行 C# 代码片段?

C#常用代码片段备忘

优化 C# 代码片段、ObservableCollection 和 AddRange