/// <summary> /// 将对象转换为 JSON 字符串 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="input"></param> /// <returns></returns> public static string ScriptSerialize<T>(T input) { string _jsonString = string.Empty; if (input != null) { JavaScriptSerializer _serializerHelper = new JavaScriptSerializer(); _serializerHelper.MaxJsonLength = int.MaxValue; _jsonString = _serializerHelper.Serialize(input); } return _jsonString; } /// <summary> /// 将指定的 JSON 字符串转换为 T 类型的对象 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="input"></param> /// <returns></returns> public static T ScriptDeserialize<T>(string input) { T rtn = default(T); if (!string.IsNullOrEmpty(input)) { JavaScriptSerializer _serializerHelper = new JavaScriptSerializer(); rtn = _serializerHelper.Deserialize<T>(input); } return rtn; } #region 利用JavaScriptSerializer将对象序列化成JSON /// <summary> /// 利用JavaScriptSerializer将对象序列化成JSON字符串 /// </summary> /// <typeparam name="T">泛型</typeparam> /// <param name="entityList">对象集合</param> /// <returns>json</returns> public static string Serialize<T>(IEnumerable<T> entityList) where T : class { string _jsonString = string.Empty; if (entityList != null) { JavaScriptSerializer _serializerHelper = new JavaScriptSerializer(); _serializerHelper.MaxJsonLength = int.MaxValue; _jsonString = _serializerHelper.Serialize(entityList); } return _jsonString; } #endregion #region 利用JavaScriptSerializer将json字符串反序列化 /// <summary> ///利用JavaScriptSerializer将json字符串反序列化 /// </summary> /// <typeparam name="T">泛型</typeparam> /// <param name="jsonString"></param> /// <returns>IEnumerable</returns> public static IEnumerable<T> Deserialize<T>(string jsonString) where T : class { IEnumerable<T> _list = null; if (!string.IsNullOrEmpty(jsonString)) { JavaScriptSerializer _serializerHelper = new JavaScriptSerializer(); _list = _serializerHelper.Deserialize<IEnumerable<T>>(jsonString); } return _list; } #endregion
C# Json 序列化與反序列化一
Josn序列化與反序列化demo
以上是C# Json 序列化與反序列化的二 網(www.php.cn)!