本文首发于个人博客https://kezunlin.me/post/22391aa3/,欢迎阅读最新内容!

c# json serialize and deserialize using json.net JsonConvert

Guide

Json.NET

  • JsonConvert.SerializeObject
  • JsonConvert.DeserializeObject

install

Use NuGet to download the package

"Project" -> "Manage NuGet packages" -> "Search for "newtonsoft json". -> click "install".

code

reference

using Newtonsoft.Json;

serialize collections

Product p1 = new Product
{
Name = "Product 1",
Price = 99.95m,
ExpiryDate = new DateTime(2000, 12, 29, 0, 0, 0, DateTimeKind.Utc),
};
Product p2 = new Product
{
Name = "Product 2",
Price = 12.50m,
ExpiryDate = new DateTime(2009, 7, 31, 0, 0, 0, DateTimeKind.Utc),
}; List<Product> products = new List<Product>();
products.Add(p1);
products.Add(p2); string json = JsonConvert.SerializeObject(products, Formatting.Indented);
//[
// {
// "Name": "Product 1",
// "ExpiryDate": "2000-12-29T00:00:00Z",
// "Price": 99.95,
// "Sizes": null
// },
// {
// "Name": "Product 2",
// "ExpiryDate": "2009-07-31T00:00:00Z",
// "Price": 12.50,
// "Sizes": null
// }
//]

deserialize collections

string json = @"[
{
'Name': 'Product 1',
'ExpiryDate': '2000-12-29T00:00Z',
'Price': 99.95,
'Sizes': null
},
{
'Name': 'Product 2',
'ExpiryDate': '2009-07-31T00:00Z',
'Price': 12.50,
'Sizes': null
}
]"; List<Product> products = JsonConvert.DeserializeObject<List<Product>>(json); Console.WriteLine(products.Count);
// 2 Product p1 = products[0]; Console.WriteLine(p1.Name);
// Product 1

serialize to json file

public class Movie
{
public string Name { get; set; }
public int Year { get; set; }
} Movie movie = new Movie
{
Name = "Bad Boys",
Year = 1995
}; // serialize JSON to a string and then write string to a file
File.WriteAllText(@"c:\movie.json", JsonConvert.SerializeObject(movie)); // serialize JSON directly to a file
using (StreamWriter file = File.CreateText(@"c:\movie.json"))
{
JsonSerializer serializer = new JsonSerializer();
serializer.Serialize(file, movie);
}

Reference

History

  • 20190910: created.

Copyright

C# 使用Json.NET对数据进行序列化和反序列化 | c# json serialize and deserialize using json.net JsonConvert的更多相关文章

  1. 对 JSON 数据进行序列化和反序列化

    如何:对 JSON 数据进行序列化和反序列化 2017/03/30 作者 JSON(JavaScript 对象符号)是一种高效的数据编码格式,可用于在客户端浏览器和支持 AJAX 的 Web 服务之间 ...

  2. Json数据的序列化与反序列化的三种经常用法介绍

    下面内容是本作者从官网中看对应的教程后所做的demo.其体现了作者对相关知识点的个人理解..作者才疏学浅,难免会有理解不到位的地方.. 还请各位读者批判性对待... 本文主要介绍在Json数据的序列化 ...

  3. C# 编写通用的JSON数据进行序列化和反序列化

    注意事项:使用JSON系列化和反系列化,必须要添加引用System.Runtime.Serialization. 1.通用类代码如下: /// <summary>    /// JSON序 ...

  4. Android 中的Json解析工具fastjson 、序列化、反序列化

    Android中通常需要访问服务器,然而服务器返回的数据很多时候都是Json格式 1.fastjson简介 阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备 ...

  5. c#中对json数据的序列化和反序列化(笔记)

    今天遇到在后台中要获取json格式数据里的某些值,网上查了些资料: string jsonstr = _vCustomerService.LoadCustomerbyNumTotalData(quer ...

  6. Python 中数据的序列化和反序列化(json处理)

    概念: JSON(JavaScript Object Notation):是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming ...

  7. 详解电子表格中的json数据:序列化与反序列化

    从XML到JSON 当下应用开发常见的B/S架构之下,我们会遇到很多需要进行前后端数据传输的场景.而在这个传输的过程中,数据通过何种格式传输.方式是否迅速便捷.书写方式是否简单易学,都成为了程序员在开 ...

  8. asp.net的JSON数据进行序列化和反序列化

    先要引用在程序集 System.Web.Extensions.dll 的类库,在类中 using System.Web.Script.Serialization 命名空间. 1.定义一个强类型的类(m ...

  9. 模块讲解----json模块(跨平台的序列化与反序列化)

    一.json的特点 1.只能处理简单的可序列化的对象:(字典,列表,元祖) 2.json支持不同语言之间的数据交互:(python  -  go,python - java)   二.使用场景 1.玩 ...

随机推荐

  1. java程序猿工具

    1.做为一个程序员打字最重要    指法打字练习软件:http://home.bdqn.cn/thread-11142-1-1.html 2.JDK必不可少    JDK6.X下载       JDK ...

  2. java 后端与前端Date类型与String类型互相转换(使用注解)

    后端返回的类型中,直接定义Date类型,加上此注解,直接将Date类型转成自定义的格式给前端 class TestDateOutput{ @JsonFormat(pattern = "yyy ...

  3. salt-api 获取服务器信息,minion批量执行cmd命令

    import requests import json try: import cookielib except: import http.cookiejar as cookielib # 使用url ...

  4. md2all 简单实用

    . 简单使用 md2all 使用地址:http://md.aclickall.com/ . 常用操作 #代表标题等级 英文下```java(语言)``` 代表代码块

  5. 利用Python进行数据分析-Pandas(第三部分)

    访问数据是使用本书所介绍的这些工具的第一步.这里会着重介绍pandas的数据输入与输出,虽然别的库中也有不少以此为目的的工具. 输入输出通常可以划分为几个大类:读取文本文件和其他更高效的磁盘存储格式, ...

  6. 查看Linux服务器CPU总核数

    下面介绍查看Linux服务器CPU总核数的方法. 通过/proc/cpuinfo可查看CPU个数及总核数. [root@kevin ~]# grep processor /proc/cpuinfo | ...

  7. .net core 2.1 Swagger 配置

    1.先创建 .net core Web 应用程序,选择API 2.安装 Nuget 包:Swashbuckle.AspNetCore Install-Package Swashbuckle.AspNe ...

  8. 学习使人快乐9--eclipse常用快捷键总结

    Ctrl + F11 按上次方式执行Ctrl + Shift + / 加上注释/**/Ctrl + Shift + \ 取消注释/**/Ctrl + /  加上或消除行注释Ctrl + D 删除当前行 ...

  9. [转]UIPATH机器人指南

    本文转自:https://blog.csdn.net/weixin_33957036/article/details/80907372 介绍 机器人是UiPath的执行代理,可运行Studio中内置的 ...

  10. socket调试工具(Mac版)

    基于Mac版的Socket测试功能,类似于PostMan的功能,对于Socket长链接的项目开发很有帮助. 本人也是通过好多渠道才找到这篇文章,与大家共享: 按照步骤一步一步来就对了~ 本文参考于:h ...