c# Json List<T> DataTable 数据相互转换
来源:互联网 发布:byte数组 0xff 编辑:程序博客网 时间:2024/05/29 13:11
List<T>转Json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public
static
string
Obj2Json<T>(T data)
{
try
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
new
System.Runtime.Serialization.Json.DataContractJsonSerializer(data.GetType());
using
(MemoryStream ms =
new
MemoryStream())
{
serializer.WriteObject(ms, data);
return
Encoding.UTF8.GetString(ms.ToArray());
}
}
catch
{
return
null
;
}
}
Json转List<T>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public
static
Object Json2Obj(String json,Type t)
{
try
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
new
System.Runtime.Serialization.Json.DataContractJsonSerializer(t);
using
(MemoryStream ms =
new
MemoryStream(Encoding.UTF8.GetBytes(json)))
{
return
serializer.ReadObject(ms);
}
}
catch
{
return
null
;
}
}
DataTable 转Json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public
static
string
DataTable2Json(DataTable dt)
{
if
(dt.Rows.Count == 0)
{
return
""
;
}
StringBuilder jsonBuilder =
new
StringBuilder();
// jsonBuilder.Append("{");
//jsonBuilder.Append(dt.TableName.ToString());
jsonBuilder.Append(
"["
);
//转换成多个model的形式
for
(
int
i = 0; i < dt.Rows.Count; i++)
{
jsonBuilder.Append(
"{"
);
for
(
int
j = 0; j < dt.Columns.Count; j++)
{
jsonBuilder.Append(
"\""
);
jsonBuilder.Append(dt.Columns[j].ColumnName);
jsonBuilder.Append(
"\":\""
);
jsonBuilder.Append(dt.Rows[i][j].ToString());
jsonBuilder.Append(
"\","
);
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append(
"},"
);
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append(
"]"
);
// jsonBuilder.Append("}");
return
jsonBuilder.ToString();
}
单个对象转JSON
1
2
3
4
5
6
7
8
9
public
static
T Json2Obj<T>(
string
json)
{
T obj = Activator.CreateInstance<T>();
using
(System.IO.MemoryStream ms =
new
System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(json)))
{
System.Runtime.Serialization.Json.DataContractJsonSerializer serializer =
new
System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.GetType());
return
(T)serializer.ReadObject(ms);
}
}
转:http://www.cnblogs.com/mrliuc/archive/2011/01/13/1934787.html
0 0
- c# Json List<T> DataTable 数据相互转换
- c# Json List<T> DataTable 数据相互转换
- c# Json List<T> DataTable 数据相互转换
- c# Json List<T> DataTable 数据相互转换
- c# Json List<T> DataTable 数据相互转换
- c# Json List<T> DataTable 数据相互转换
- Json List<T> DataTable 数据相互转换
- Json List<T> DataTable 数据相互转换
- c# Json List DataTable 数据相互转换
- List<T>与DataTable相互转换
- datatable转换成list<T>,datatable转换成json格式
- C#中List与DataTable相互转换
- asp.net中DataTable和List<T>之间相互转换
- C# DataTable 转换成JSON数据
- C# DataTable转换成JSON数据
- C# DataTable 和List之间相互转换的方法[转]
- C# DataTable 和List之间相互转换的方法
- C# DataTable 和List之间相互转换的方法
- 跨平台移动开发phonegap/cordova 3.3全系列教程-helloworld
- Web应用设置Context Path的方式
- 移动前端开发之viewport的深入理解
- [BZOJ 1505][NOI 2004]小H的小屋(DP优化)
- 数据库恢复起点判定(使用新控制文件)
- c# Json List<T> DataTable 数据相互转换
- 简单实现安装windows的ElsticSearch
- 数据结构 - 赫夫曼树及其应用
- android项目中单实例数据库类
- leetcode中Single Number II的一个通用解法
- Java学习14--UDP网络编程/网络知识小结
- Android实现双进程守护
- 学习 Toeplitz matrices
- 判断网络是否连接或是否连接wifi