将JSON格式的字符串读取到类中

本例中建立JSON格式的字符串json,将其内容读取到Person类中

运行本代码需要添加引用动态库Newtonsoft.Json

程序代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; //需要引用 Newtonsoft.Json.dll
using Newtonsoft.Json; namespace JsonTest
{
class Program
{
/// <summary>
/// 人员类
/// </summary>
public class Person
{
public string name; //姓名
public int age; //年龄
public bool sex_is_male; //性别 public struct Partner //伙伴
{
public string partner_name; //伙伴姓名
public int partner_age; //伙伴年龄
public bool partner_sex_is_male; //伙伴性别
}
public Partner partner; public string[] achievement; //成就 //构造函数
public Person()
{
name = "";
age = ;
sex_is_male = true;
partner.partner_name = "";
partner.partner_age = ;
partner.partner_sex_is_male = true;
achievement = null;
}
} static void Main(string[] args)
{
string json = string.Concat(
"{",
" \"name\":\"Tsybius\",",
" \"age\":23,",
" \"sex_is_male\":true,",
" \"partner\":",
" {",
" \"partner_name\":\"Galatea\",",
" \"partner_age\":21,",
" \"partner_sex_is_male\":false",
" },",
" \"achievement\":[\"ach1\",\"ach2\",\"ach3\"]",
"}"
); //将内容赋值到Person类
Person p = JsonConvert.DeserializeObject<Person>(json);
Console.WriteLine("name: " + p.name);
Console.WriteLine("age: " + p.age);
Console.WriteLine("sex_is_male: " + p.sex_is_male);
Console.WriteLine("partner_name: " + p.partner.partner_name);
Console.WriteLine("partner_age: " + p.partner.partner_age);
Console.WriteLine("partner_sex_is_male: " + p.partner.partner_sex_is_male);
Console.Write("achievement: ");
foreach (string achv in p.achievement)
{
Console.Write(achv + " ");
}
Console.WriteLine(); Console.ReadLine();
}
}
}

运行结果:

END

[转]C# JSON格式的字符串读取到类中的更多相关文章

  1. JSon_零基础_006_将JSon格式的字符串转换为Java对象

    需求: 将JSon格式的字符串转换为Java对象. 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, 通过get(key ...

  2. json格式的字符串转为json对象遇到特殊字符问题解决

    中午做后台发过来的json的时候转为对象,可是有几条数据一直出不来,检查发现json里包含了换行符,造成这种情况的原因可能是编辑部门在编辑的时候打的回车造成的 假设有这样一段json格式的字符串 va ...

  3. 解决如下json格式的字符串不能使用DataContractJsonSerializer序列化和反序列化 分类: JSON 2015-01-28 14:26 72人阅读 评论(0) 收藏

    可以解决如下json格式的字符串不能使用DataContractJsonSerializer反序列化 {     "ss": "sss",     " ...

  4. android实现json数据的解析和把数据转换成json格式的字符串

    利用android sdk里面的 JSONObject和JSONArray把集合或者普通数据,转换成json格式的字符串 JSONObject和JSONArray解析json格式的字符串为集合或者一般 ...

  5. 在PHP代码中处理JSON 格式的字符串的两种方法:

    总结: 在PHP代码中处理JSON 格式的字符串的两种方法: 方法一: $json= '[{"id":"1","name":"\u ...

  6. C#将datatable的某一列转换成json格式的字符串

    将datatable的某一列转换成json格式的字符串(转换完后自己在字符串前后加{}) /// <summary> ///DataTable装换 Column数据 组合成json 现在的 ...

  7. JavaScript中,JSON格式的字符串与JSON格式的对象相互转化

    前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有“JSON对象”和“JSON字符串”这个说法(然而”菜鸟教程“和”W3school“使用了“JSON对象”和“JSON字符串”这个说法 ...

  8. 校验字符串是否是JSON格式,将不规则展示的json格式的字符串进行规则展示(json格式化)

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   var str = {"code": "","svcname" ...

  9. 【PHP函数】json_decode() ---- 对 JSON 格式的字符串进行解码

    json_decode() --- 对 JSON 格式的字符串进行解码 1.用法: mixed json_decode ( string $json [, bool $assoc = false [, ...

随机推荐

  1. 【hihocoder 1554】最短的 Nore0061

    [链接]http://hihocoder.com/problemset/problem/1554 [题意] 中文题 [题解] DP; 设f[i][j][k]表示前i个字符,第一个串已经得到了前j个字符 ...

  2. 二分+贪心——cf1251D

    二分的时候要特别注意一下下界L #include<bits/stdc++.h> using namespace std; #define ll long long #define N 20 ...

  3. CF D. Walking Between Houses (贪心)

    题意: 现在有n个房子排成一列,编号为1~n,起初你在第1个房子里,现在你要进行k次移动,每次移动一都可以从一个房子i移动到另外一个其他的房子j里(i != j),移动的距离为|j - i|.问你进过 ...

  4. python re 正則匹配規則

  5. python Map()和reduce()函数

    Map()和reduce()函数 map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函 ...

  6. SSM框架整合思路

    SSM框架整合思路 Spring在整合中起到的作用(面试时常问到) Spring管理持久层的mapper. Spring管理业务层的service,service可以调用mapper接口.Spring ...

  7. 19、Linux命令对服务器内存进行监控

    国际惯例,我们要知道什么是服务器的内存,内存有哪些作用.这里就不做过多介绍,Linux性能监控需要我们对底层要有一定的理解.下面我将会列出我常用的监控内存的工具. vmstat vmstat显示关于进 ...

  8. adapter设计模式

    适配器设计模式 将一个类的接口转换成客户希望的另外一个接口.Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 例如:现在有一个220V的插口,而手机不能直接接上去,因为锂电 ...

  9. C static extern和全局变量

    #include <stdio.h> //默认全局变量为外部变量 int a; //当全局变量前面加上static时,该变量为内部变量 static int b; void test(); ...

  10. Java 四种内部类

    静态内部类:类中静态类 成员内部类:类中非静态类 局部内部类:类中方法中有名字的类 匿名内部类:类中方法中无名的类 引言:在Java中通常情况下,一个类中会有属性和方法,但还可以包含内部类,内部类可以 ...