码迷,mamicode.com
首页 > Web开发 > 详细

json 的相互 转换

时间:2015-03-10 13:54:50      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

 

using System.Runtime.Serialization.Json;

//json 转化为List集合

public List<T> JSONStringToList<T>(string strJson)
{
JavaScriptSerializer serializer = new JavaScriptSerializer();

//List<T> objList = serializer.Deserialize<List<T>>(strJson);
List<T> objList = Deserialize<List<T>>(strJson);
return objList;
}

public static T Deserialize<T>(string json)
{

T obj = Activator.CreateInstance<T>();

using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))
{

DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());

return (T)serializer.ReadObject(ms);
}

}

 

//===================================

/// <summary>
/// DataTable转JsonString
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
public static string DataTableToJsonString(DataTable dt)
{
StringBuilder sb = new StringBuilder();
if (dt != null && dt.Rows.Count > 0)
{

foreach (DataRow dr in dt.Rows)
{
string row = string.Empty;
for (int i = 0; i < dt.Columns.Count; i++)
{
row += string.Format(",\"{0}\":\"{1}\"", dt.Columns[i].ColumnName, dr[i]);
}
if (row.Length>0)
{
row = row.Remove(0, 1);

}
sb.AppendFormat(",{{{0}}}",row);
}
sb.Remove(0, 1);
sb.Insert(0,"[");
sb.Append("]");

}
return sb.ToString();
}

json 的相互 转换

标签:

原文地址:http://www.cnblogs.com/yangjinwang/p/4325731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!