C# (using Newtonsoft.Json) Json 转换用法小总结
//序列化
string Json字符串 = JsonConvert.SerializeObject(目标对象);
// 字符串转化为对象
string UserJson = "{\"UNO\":\"1\"," +
" \"UName\":\"龙\"," +
" \"Uage\":\"21\"," +
" \"Uaddress\":\"中国\"," +
" \"Uphone\":\"151 3692 3546\"}";
User Data = JsonConvert.DeserializeObject<User>(UserJson);
//json字符串 转化为List集合
string jsonText = "{ \"Total\":\"0\"," +
" \"Rows\":" +
"[" +
"{\"UNO\":\"1\"," +
"\"UName\":\"龙\"," +
"\"Uage\":\"21\"," +
"\"Uaddress\":\"中国!\"," +
"\"Uphone\":\"151 3692 3546\"}," +
"{\"UNO\":\"1\"," +
"\"UName\":\"龙\"," +
"\"Uage\":\"21\"," +
"\"Uaddress\":\"中国!\"," +
"\"Uphone\":\"151 3692 3546\"}" +
"]}";
//获取索引
int IndexofA = jsonText.IndexOf("[");
int IndexofB = jsonText.IndexOf("]");
//根据索引截取
string str = jsonText.Substring(IndexofA, IndexofB - IndexofA + );
//序列化
List<User> objs = JsonConvert.DeserializeObject<List<User>>(str);
//Json字符串 转化成 DataTable
string Stringjson = "{ \"Total\":\"0\"," +
" \"Rows\":" +
"[" +
"{\"UNO\":\"1\"," +
"\"UName\":\"龙\"," +
"\"Uage\":\"21\"," +
"\"Uaddress\":\"中国!\"," +
"\"Uphone\":\"151 3692 3546\"}," +
"{\"UNO\":\"1\"," +
"\"UName\":\"龙\"," +
"\"Uage\":\"21\"," +
"\"Uaddress\":\"中国!\"," +
"\"Uphone\":\"151 3692 3546\"}" +
"]}";
//获取索引
int IndexofArrayListA = jsonText.IndexOf("[");
int IndexofArrayListB = jsonText.IndexOf("]");
//根据索引截取
string JsonString = Stringjson.Substring(IndexofArrayListA, IndexofArrayListB - IndexofArrayListA + );
List<User> obj = JsonConvert.DeserializeObject<List<User>>(JsonString);
System.ComponentModel.PropertyDescriptorCollection properties = System.ComponentModel.TypeDescriptor.GetProperties(typeof(User));
DataTable dt = new DataTable();
for (int i = ; i < properties.Count; i++)
{
System.ComponentModel.PropertyDescriptor property = properties[i];
dt.Columns.Add(property.Name, property.PropertyType);
}
object[] values = new object[properties.Count];
foreach (User item in obj)
{
for (int i = ; i < values.Length; i++)
{
values[i] = properties[i].GetValue(item);
}
dt.Rows.Add(values);
}
//实体对象
/// <summary>
/// 实体对象
/// </summary>
public class User
{
public string UNO { get; set; }
public string UName { get; set; }
public string Uage { get; set; }
public string Uaddress { get; set; }
public string Uphone { get; set; } }
C# (using Newtonsoft.Json) Json 转换用法小总结的更多相关文章
- 记录Newtonsoft.Json的日常用法
最近在做一个使用基于.net mvc 实现前后台传输Json的实例.网上找了一些资料.发现在开发的时候,许多的数据交互都是以Json格式传输的.其中涉及序列化对象的使用的有DataContractJs ...
- C# Newtonsoft.Json解析数组的小例子[转]
https://blog.csdn.net/Sayesan/article/details/79756738 C# Newtonsoft.Json解析数组的小例子 http://www.cnblog ...
- 小程序跳坑之JSON字符串转换JSON对象
常见的JSON字符串转换有很多,这里只讲我遇到过的小程序中用到的转换. 通常我们在小程序中用到的地方是,请求一个数据表或者请求一个接口,拿到了一堆数据,里面包含有各种字段数组,头像,图片,详情,地址, ...
- C#将对象转换成JSON字符串,Newtonsoft.Json (JSON.NET)
官方API说明文档 http://www.newtonsoft.com/json/help/html/N_Newtonsoft_Json.htm http://www.newtonsoft.com/ ...
- Newtonsoft.Json 的基本用法
Ø 前言 说起 C# 对 JSON 的操作(序列化与反序列化),大家都会想到 JavaScriptSerializer.DataContractJsonSerializer 与 Newtonsoft ...
- Newtonsoft.Json(Json.Net)学习笔记
Newtonsoft.Json 在Vs2013中就有自带的: 下面是Json序列化和反序列化的简单封装: /// <summary> /// Json帮助类 /// </summar ...
- Newtonsoft.Json(Json.Net)学习笔记(转)
概述 Newtonsoft.Json,一款.NET中开源的Json序列化和反序列化类库,通过Nuget获取.(查看原文) 下面是Json序列化和反序列化的简单封装: /// <summary&g ...
- json 字符串转换成对象,对象转换成json字符串
json 字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法: [注意jquery版本问题] var str = '{"name":&qu ...
- json datetime转换问题
我用Newtonsoft.Json.dll转换成json,这次是把一个集合转换成json,这个集合里有个DateTime类型的数据,转换完成后会变成/Date(1286375605000+0800)/ ...
随机推荐
- CodeForces - 556C Case of Matryoshkas
//////////////////////////////////////////////////////////////////////////////////////////////////// ...
- 胜利大逃亡(续)(bfs+状态压缩)
胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- Python 判断是否为质数或素数
一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有其他的因数. 首先我们来第一个传统的判断思路: def handl ...
- Hive简单安装
数据库的创建 Hive1版本 在此之前要安装好JDK,HADOOP,下载解压Hive 在root下安装mysql:yum install mysql-server mysql-client //一般M ...
- 爱pia戏推出PC客户端,为您自动置顶窗口,方便查找
爱pia戏推出PC客户端, 可以在无法使用插件的时候,使用PC客户端, 将为您自动置顶窗口,方便查看剧本. 百度网盘下载地址: 链接: http://pan.baidu.com/s/1pLpvn5p ...
- 如何实现websocket服务器-理论篇
WebSocket 服务器简单来说就是一个遵循特殊协议监听服务器任意端口的tcp应用.搭建一个定制服务器的任务通常会让让人们感到害怕.然而基于实现一个简单的Websocket服务器没有那么麻烦. 一个 ...
- VMware14.0.0 版本虚拟机安装Ubuntu16.04 LTS版本Linux系统(多图详细步骤)
一.前期准备工作 1.成功安装完成VMware14软件: 2.去Ubuntu官网下载Ubuntu16.0.4 LTS 版本的镜像文件. 二.安装步骤 1.打开VMware软件,选择<创建虚拟机& ...
- 网站出现service unavailable的解决方法
特别提示:本文的教程仅适合采用windows服务器的IIS组件上操作,service unavailable是许多网站会经常遇到的问题,希望对大家有用. 昨天一小段时间网站出现了service una ...
- C#操纵Excel,此工作薄包含嵌入对象,Office 2007的设定方法
C#操纵Excel,插入OLE对象时报“此工作薄包含嵌入对象,EXCEL可能无法从这些对象中删除个人信息.”, 如网上所述,Office 2003可以通过“菜单>>工具>>选项 ...
- 百度统计的JS脚本原理分析
首先,百度统计会要求我们在要统计的页面中嵌入一段js语句,类似如下: <script type="text/javascript">var _bdhmProtocol ...