转者注:原文有一处错误已修正。经常用的代码,收藏备用(2020-7-9)
通过DataContractJsonSerializer类来序列化一个对象为json字符串。
public class JsonConvert<T>
{
public static string ObjectToJson(T obj)
{
var serializer = new DataContractJsonSerializer(typeof(T));
var stream = new MemoryStream();
serializer.WriteObject(stream, obj);
byte[] dataBytes = new byte[stream.Length];
stream.Position = 0;
stream.Read(dataBytes, 0, (int)stream.Length);
string json = Encoding.UTF8.GetString(dataBytes);
return json;
}
public static T JsonToObject(string jsonString)
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
var stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
T t1 = (T)serializer.ReadObject(stream );
return t1;
}
}
使用Json.NET(Newtonsoft.Json)进行序列化与反序列化。
List<Student> students = studentBLL.GetALL(); string jsonStudents = JsonConvert.SerializeObject(students);
string jsonStudents = service.GetAllStudent(); List<Student> students = JsonConvert.DeserializeObject<List<Student>>(jsonStudents);
本文介绍如何使用DataContractJsonSerializer和Json.NET进行对象的序列化与反序列化操作,提供了具体的代码示例,包括将对象转换为JSON字符串以及从JSON字符串还原对象。
900

被折叠的 条评论
为什么被折叠?



