C# Json序列化与反序列化
2014-12-16 19:02
197 查看
http://blog.csdn.net/chenbin520/article/details/8711142
我们可以通过DataContractJsonSerializer类来序列化一个对象为json字符串
[csharp] view
plaincopy
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(string);
return t1;
}
}
使用Json.NET(Newtonsoft.Json)进行序列化与反序列化
[csharp] view
plaincopy
List<Student> students = studentBLL.GetALL();
string jsonStudents = JsonConvert.SerializeObject(students);
[csharp] view
plaincopy
string jsonStudents = service.GetAllStudent();
List<Student> students = JsonConvert.DeserializeObject<List<Student>>(jsonStudents);
学习资料:http://james.newtonking.com/json/help/index.html#
我们可以通过DataContractJsonSerializer类来序列化一个对象为json字符串
[csharp] view
plaincopy
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(string);
return t1;
}
}
使用Json.NET(Newtonsoft.Json)进行序列化与反序列化
[csharp] view
plaincopy
List<Student> students = studentBLL.GetALL();
string jsonStudents = JsonConvert.SerializeObject(students);
[csharp] view
plaincopy
string jsonStudents = service.GetAllStudent();
List<Student> students = JsonConvert.DeserializeObject<List<Student>>(jsonStudents);
学习资料:http://james.newtonking.com/json/help/index.html#
相关文章推荐
- C#对JSON的序列化和反序列化
- C#中的Json的序列化和反序列化
- 用js解析经后台json序列化后的C#的DateTime类型数据
- C# Json序列化与反序列化
- C#自带Json序列化工具使用
- c#中的Json的序列化和反序列化
- C#(服务器)与Java(客户端)通过Socket传递对象(序列化 json)
- C#对 Json的序列化和反序列化会出现“k_BackingField”
- C# 序列化json,以及前端解析json
- C# JSON字符串序列化与反序列化(转)
- C#实现简单的JSON序列化
- c#.net 4 json序列化与反序列化通用类
- C#在Json反序列化中处理键的特殊字符
- C#将Json字符串反序列化成List对象类集合
- C#中的Json的序列化和反序列化
- C#使用DataContractJsonSerializer实现Json格式的序列化和反序列化
- C# 使用JSON对数据序列化和反序列化.
- C#反序列化JSON数组对象
- C#实现JSON序列化与反序列化介绍
- ASP.NET C#使用JavaScriptSerializer实现序列化与反序列化得到JSON