C#使用json

点击工具 - NuGet包管理器 - 程序包管理控制台,输入下面命令:

Install-Package Newtonsoft.Json

即可使用Newtonsoft.Json 包进行json操作

PM> Install-Package Newtonsoft.Json

正在尝试收集与目标为“.NETFramework,Version=v4.0”的项目“QiniuTests”有关的包“Newtonsoft.Json.11.0.2”的依赖项信息

收集依赖项信息花费时间 24.27 ms

正在尝试解析程序包“Newtonsoft.Json.11.0.2”的依赖项,DependencyBehavior 为“Lowest”

解析依赖项信息花费时间 0 ms

正在解析操作以安装程序包“Newtonsoft.Json.11.0.2”

已解析操作以安装程序包“Newtonsoft.Json.11.0.2”

从“nuget.org”检索包“Newtonsoft.Json 11.0.2”

 GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/11.0.2/newtonsoft.json.11.0.2.nupkg
 OK https://api.nuget.org/v3-flatcontainer/newtonsoft.json/11.0.2/newtonsoft.json.11.0.2.nupkg 98 毫秒

正在安装 Newtonsoft.Json 11.0.2。

正在将程序包“Newtonsoft.Json.11.0.2”添加到文件夹“C:\Users\yfj\Desktop\qiniu\qiniu-sdk\csharp-sdk\src\packages”

已将程序包“Newtonsoft.Json.11.0.2”添加到文件夹“C:\Users\yfj\Desktop\qiniu\qiniu-sdk\csharp-sdk\src\packages”

已将程序包“Newtonsoft.Json.11.0.2”添加到“packages.config”

已将“Newtonsoft.Json 11.0.2”成功安装到 QiniuTests

执行 nuget 操作花费时间 3.39 sec

已用时间: 00:00:04.4618228

PM>

补充:【解决方案】C#使用Newtonsoft解析JSON字符串

在很多涉及到网络通讯的地方,往往会用到JSON,初次接触这个东西,真的很令人头痛。不过有了Newtonsoft,这一切就变得出奇地简单:

现在有下面一段JSON,如何解析呢?

{
 "class": "apiClass",
 "cmd": "apiCommand",
 "param": {
 "param1": "param1",
 "param2": "param2"
 },
 "jarray": [
 {
  "arr1": "this is arr1"
 },
 {
  "arr1": "this is arr2"
 }
 ]
}

1、提取cmd的值

JObject jObject = JObject.Parse(JSON字符串);
String cmd=jObject["cmd"].ToString();

是不是超级简单?

2、提取param1的值

JObject jObject = JObject.Parse(JSON字符串);
String param1=jObject["param"]["param1"].ToString();

是不是一样超级简单?

3、提取数组中第一项arr1的值,index=1

JObject jObject = JObject.Parse(JSON字符串);
String arr1=jObject["jarray"][1]["arr1"].ToString();

把数据中每一个都取出来一下

JObject jObject = JObject.Parse(JSON字符串);
JArray jArray=JArray.Parse(jObject["jarray"].ToString());
foreach(var arr in jArray)
{
 JObject jObj = JObject.Parse(arr.ToString());
 String arr1=jObj["arr1"].ToString();
}

4、如果某个Key不存在,怎么办呢?

JObject jObject = JObject.Parse(JSON字符串);
if (jObject.Property("我的Key") != null)
{
 String 我的Key= jObject["我的Key"].ToString();
}
else
{
 //我的Key不存在
}

好啦,现在看到这里,Newtonsoft,应该都会用啦。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持乐虎体育。如有错误或未考虑完全的地方,望不吝赐教。

标签:

c#添加Newtonsoft.Json包的操作的更多相关文章

  1. C#扫盲篇(四):.NET Core 的异步编程-只讲干货(async,await,Task)

    关于async,await,task的用法和解释最精简的说明关于async,await,task的用法和解释这里就不......

  2. 计算机网络安全 —— C# 使用谷歌身份验证器(Google Authenticator)

    一、Google Authenticator 基本概念Google Authenticator是谷歌推出的一款动态口......

  3. c#在sqlserver中使用EF框架

    vs2017,sqlserver2017(localdb)调试通过。在sqlserver中创建数据库d1,表t1如下......

  4. c#发送请求访问外部接口的实例

    我就废话不多说了,大家还是直接看代码吧~string url = "https://cloud.soei.......

  5. c#里面的AES加密解密

    C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现更多1AESJavasc......

  6. 使用 C# 9 的records作为强类型ID - 路由和查询参数

    上一篇文章,我介绍了使用 C# 9 的record类型作为强类型id,非常简洁public record Produ......

  7. c# 实现网页加载后将页面截取为长图片

    背景最近再做一个需求,需要对网页生成预览图,如下图但是网页千千万,总不能一个个打开,截图吧;于是想着能不能使用代码来......

  8. C#中File和FileStream的简单介绍和用法

    前言在近期的工作过程中发现自己的基础比较薄弱,所以最近在恶补基础知识。下面就对我所学习的File类和FileStre......

  9. C# Aspose.Words 删除word中的图片操作

    今天介绍下 Aspose.Words 对 word 中的图片进行删除string tempFile = Applic......

  10. C# FTP上传下载 代码

    using System; using System.Collections.Generic; using Sy......

随机推荐

  1. 【函数分享】每日PHP函数分享

    str_pad() 使用另一个字符串填充字符串为指定长度 。string str_pad ( string $i......

  2. ASP.NET Core 5.0 MVC中的 Razor 页面 介绍

    Razor 是一个用于将基于服务器的代码嵌入到网页中的标记语法。 Razor语法由 Razor 标记、c # 和 H......

  3. 使用JWT创建安全的ASP.NET Core Web API

    在本文中,你将学习如何在ASP.NET Core Web API中使用JWT身份验证。我将在编写代码时逐步简化。我们......

  4. Java并发编程实战(5)- 线程生命周期

    在这篇文章中,我们来聊一下线程的生命周期。在这篇文章中,我们来聊一下线程的生命周期。目录概述操作系统中的线程生命周期......

  5. 浅谈JavaScript代码性能优化2

    一.减少判断层级 从下图代码中可以明显看出,同样的效果判断层级的减少可以优化性能二.减少作用域链查找层级 简单解释下......

  6. std::async的使用总结

    C++98标准中并没有线程库的存在,直到C++11中才终于提供了多线程的标准库,提供了管理线程、保护共享数据、线程间......

  7. .NET并发编程-函数式编程

    本系列学习在.NET中的并发并行编程模式,实战技巧函数式编程和面向过程编程POP(procedure oriente......

  8. 史上最详细的Python打包成exe文件教程

    打包成exe文件可以让python代码在没有python环境的条件下,依然能够运行,实在是码农们写追女朋友表白、情人......

  9. Json转换工具

    import java.util.List;import com.fasterxml.jackson.core.Js......

  10. node.js常用内置模块一

    在使用内模块的时候需要先将所需的内置模块进行引入、OS模块在nodejs中OS模块提供了与操作系统相关的属性和方法/......