//序列化

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 转换用法小总结的更多相关文章

  1. 记录Newtonsoft.Json的日常用法

    最近在做一个使用基于.net mvc 实现前后台传输Json的实例.网上找了一些资料.发现在开发的时候,许多的数据交互都是以Json格式传输的.其中涉及序列化对象的使用的有DataContractJs ...

  2. C# Newtonsoft.Json解析数组的小例子[转]

    https://blog.csdn.net/Sayesan/article/details/79756738 C# Newtonsoft.Json解析数组的小例子  http://www.cnblog ...

  3. 小程序跳坑之JSON字符串转换JSON对象

    常见的JSON字符串转换有很多,这里只讲我遇到过的小程序中用到的转换. 通常我们在小程序中用到的地方是,请求一个数据表或者请求一个接口,拿到了一堆数据,里面包含有各种字段数组,头像,图片,详情,地址, ...

  4. C#将对象转换成JSON字符串,Newtonsoft.Json (JSON.NET)

    官方API说明文档 http://www.newtonsoft.com/json/help/html/N_Newtonsoft_Json.htm http://www.newtonsoft.com/ ...

  5. Newtonsoft.Json 的基本用法

    Ø  前言 说起 C# 对 JSON 的操作(序列化与反序列化),大家都会想到 JavaScriptSerializer.DataContractJsonSerializer 与 Newtonsoft ...

  6. Newtonsoft.Json(Json.Net)学习笔记

    Newtonsoft.Json 在Vs2013中就有自带的: 下面是Json序列化和反序列化的简单封装: /// <summary> /// Json帮助类 /// </summar ...

  7. Newtonsoft.Json(Json.Net)学习笔记(转)

    概述 Newtonsoft.Json,一款.NET中开源的Json序列化和反序列化类库,通过Nuget获取.(查看原文) 下面是Json序列化和反序列化的简单封装: /// <summary&g ...

  8. json 字符串转换成对象,对象转换成json字符串

    json   字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法:   [注意jquery版本问题] var str = '{"name":&qu ...

  9. json datetime转换问题

    我用Newtonsoft.Json.dll转换成json,这次是把一个集合转换成json,这个集合里有个DateTime类型的数据,转换完成后会变成/Date(1286375605000+0800)/ ...

随机推荐

  1. Java IO编程全解(三)——伪异步IO编程

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7723174.html 前面讲到:Java IO编程全解(二)--传统的BIO编程 为了解决同步阻塞I/O面临 ...

  2. Android 开发笔记___登陆app

    package com.example.alimjan.hello_world; /** * Created by alimjan on 7/4/2017. */ import android.con ...

  3. asp.net 自定义的模板方法接口通用类型

    本来想写这个帖子已经很久了,但是公司事情多,做着做着就忘记了.公司因为需要做接口,而且用的还是asp.net的老框架,使用Handler来做,没得办法,自己照着MVC写了一个通过的接口操作模板. 上送 ...

  4. 第一数学归纳法 vs 第二数学归纳法 vs 良序定理

    相关: 第一数学归纳法 vs 第二数学归纳法 vs 良序定 第二数学归纳法:硬币问题和堆垛游戏 第一数学归纳法:施塔特中心的地板砖 良序原理:算术基本定理的证明 From : Mathematics ...

  5. php正则表达式,在抓取内容进行匹配的时候表现不稳定

    最近做了一个 抓取内容的程序,使用php的正则表达式对抓取的内容进行匹配,当进行大量匹配运算的时候,发现偶尔会出现匹配失败的情况.检查不出任何原因. 匹配失败导致匹配结果为空,最终导致写入数据库失败. ...

  6. PHP面试随笔

    1.常见的HTTP状态码: 1xx系列:代表请求已被接受,需要继续处理 2xx系列:代表请求已成功被服务器接收.理解并接受 200:表示请求已成功,请求所希望的响应头或数据体将随此响应返回 201:表 ...

  7. HTML表单设计(上)

    1,表单标记<form>...</form> <form>...</form>定义表单的开始位置和结束位置,表单提交时的内容就是<form> ...

  8. Node.js初探之POST方式传输

    小知识:POST比GET传输的数据量大很多 POST发数据--"分段" 实例: 准备一个form.html文件: <!DOCTYPE html> <html> ...

  9. C++使用htslib库读入和写出bam文件

      有时候我们需要使用C++处理bam文件,比如取出read1或者read2等符合特定条件的序列,根据cigar值对序列指定位置的碱基进行统计或者对序列进行处理并输出等,这时我们可以使用htslib库 ...

  10. 数组去重+indexOf()应用

    说起数组去重大家都不陌生,去重也有好多种方法,这里介绍很好理解的两种. 第一种 首先说一下第一种的逻辑,就是先拿第一个去跟第二个比,再跟第三个比,再跟第四个比--只要发现有相等的,可以用splice( ...