C#中Newtonsoft.Json.dll 的使用
1.类库说明
Newtonsoft.Json.dll是.NET 下开源的json格式序列号和反序列化的类库,利用此类库,可以方便地操作json数据,其中在反序列化时,可以直接将格式化的json数据处理成预定义的实体类,也可以生成对应的匿名类
2.环境配置
1通过NuGet程序包直接配置
在对应项目的引用选项上右键,在弹出菜单中选择”管理NuGet程序包”,在搜索框中搜索json,找到Newtonsoft.Json,等待安装完毕
3.直接引用dll
直接在项目中引用Newtonsoft.Json.dll即可
4.json序列化
1).预定义实体类
/// <summary>
/// 用于测试的预定义实体类
/// </summary>
class JsonTest
{
/// <summary>
/// 初始化
/// </summary>
public void Init()
{
JsonTest test = new JsonTest();
test.Id = "2017";
test.Name = "测试数据";
test.Data = new List<string>() { "1", "2", "3", "4", "5" };
} List<String> _Data = new List<string>(); public List<String> Data
{
get { return _Data; }
set { _Data = value; }
} String _Name = String.Empty; public String Name
{
get { return _Name; }
set { _Name = value; }
} String _Id = String.Empty; public String Id
{
get { return _Id; }
set { _Id = value; }
}
}
2).序列化自定义实体类的对象
static void Main(string[] args)
{
SerializeTest();
Console.ReadLine();
} public static void SerializeTest()
{
JsonTest test = new JsonTest();
test.Init();
String json = JsonConvert.SerializeObject(test,Formatting.Indented); Console.WriteLine(json);
}
例子中使用了JsonConvert.SerializeObject的一个重载方法 Formatting是一个枚举类型,表示是否将json数据格式化,运行效果如下

5.反序列化
1).反序列化为预定义实体类
static void Main(string[] args)
{
DeSerializeTest();
Console.ReadLine();
} public static void DeSerializeTest()
{
String jsonstr = "{\"Id\":\"2017\",\"Name\":\"测试数据\",\"Data\":[\"1\",\"2\",\"3\",\"4\",\"5\"]}";
var test = JsonConvert.DeserializeObject<JsonTest>(jsonstr);
String str = "Id:{0}\nName:{1}\nData:{2}"; Console.WriteLine(str, test.Id, test.Name, String.Join(",", test.Data));
}
运行结果

该文章转载于:CSDN-Cubeeeeee
C#中Newtonsoft.Json.dll 的使用的更多相关文章
- .Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程
JSON作为一种轻量级的数据交换格式,简单灵活,被很多系统用来数据交互,作为一名.NET开发人员,JSON.NET无疑是最好的序列化框架,支持XML和JSON序列化,高性能,免费开源,支持LINQ查询 ...
- 使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON、.net 的json的序列化与反序列化(一)
在开发中,我非常喜欢动态语言和匿名对象带来的方便,JSON.NET具有动态序列化和反序列化任意JSON内容的能力,不必将它映射到具体的强类型对象,它可以处理不确定的类型(集合.字典.动态对象和匿名对象 ...
- Newtonsoft.Json.dll 反序列化JSON字符串
上一篇JSON博客<JSON入门级学习小结--JSON数据结构>中已对JSON做了简单介绍,JSON字符串数组数据样式大概是这样子的: 如今因为项目需求(asp.net web网站,前台向 ...
- DataTable转Json字符串(使用Newtonsoft.Json.dll)
DataTable转Json字符串(使用Newtonsoft.Json.dll) 在需要把DataTable转为Json字符串时,自己手动拼接太麻烦,而且容易出错,费时费力,使用Newtonsoft. ...
- FineUI中Newtonsoft.Json版本报错解决办法
1.清空bin下的Newtonsoft.Json.dll 2.使用Nuget安装最新版本的Newtonsoft.Json.dll,安装脚本为 Install-Package Newtonsoft.Js ...
- WCF JSON DATETIME JSON.NET (Newtonsoft.Json.dll)
[DataMember] public DateTime? myTime { get; set; } var timeFormat = new JsonSerializerSettings() { D ...
- C# 使用Newtonsoft.Json.dll 格式化显示Json串
private string ConvertJsonString(string str) { //格式化json字符串 JsonSerializer serializer = new JsonSeri ...
- Newtonsoft.Json.dll
代码 using System; DoNet2.0 需要借助于Newtonsoft.Json.dll using System.IO; using System.Text; using Newtons ...
- Newtonsoft.Json.dll使用
1:Newtonsoft.Json.dll 下载 http://json.codeplex.com/ 2:解析JSON字符窜 方法1: using Newtonsoft.Json; using Sy ...
- C#应用Newtonsoft.Json.dll,控制json的时间格式
原文:C#应用Newtonsoft.Json.dll,控制json的时间格式 var aIsoDateTimeConverter = new IsoDateTimeConverter();aIsoDa ...
随机推荐
- Web学习篇—Http协议
Http协议简介 h3 { background: rgba(0, 154, 205, 1); color: rgba(255, 255, 255, 1); border-radius: 6px; f ...
- linux磁盘读写速度测试
磁盘读写速度标准 1.机械硬盘读写速度平均60---80M每秒. 2.固态硬盘不同品牌型号之间,平均大约在150---300M每秒. 3.5400转的笔记本硬盘:50-90MB每秒. 4.7200转的 ...
- 一套.NET Core +WebAPI+Vue前后端分离权限框架
今天给大家推荐一个基于.Net Core开发的企业级的前后端分离权限框架. 项目简介 这是基于.NetCore开发的.构建的简单.跨平台.前后端分离的框架.此项目代码清晰.层级分明.有着完善的权限功能 ...
- 在Windows上安装torch遇到的部分问题
1.版本问题 老师新买的这台机器是RTX 3060,没动显卡驱动,直接安装的CUDA,装的11.4,完全按照这篇blog来的,非常舒服:https://blog.csdn.net/qq_4504187 ...
- (原创)odoo15(master)下,列表导出权限控制
列表导出增加一个内置用户组"base.group_allow_export"以增强权限控制.
- python 嵌套对象转为dict
as_dict(self, keys=None, exclude_keys=None): """ 将ORM对象序列化为字典 :param keys: :return: & ...
- pj_time_swap
#!/usr/bin/python# -*- coding: UTF-8 -*- import timeimport refrom datetime import datetime, timezone ...
- 基于winds10 安装docker 踩坑记录
1.官方下载 https://www.docker.com/ 2.根据提示安装 并重庆计算机3.双击运行 报 Docker Desktop is shutting down 提示 计算机c: 盘 A ...
- Symfony2在Nginx下的配置方法图文教程
来源: https://www.xp.cn/b.php/79706.html Symfony2在Nginx下的配置方法图文教程 本文详细讲述了Symfony2在Nginx下的配置方法.分享给大家供大家 ...
- chia NFT 经验
除了NFT的ID 其他所有内容都可以相同包括NFT数据,meta,许可证 收藏集创建一次后就无法更改了,如果之后的mint中重新设置了收藏集,将无效, 收藏集只认UUID,不认名称.