jtoken

操作Json 和 SelectTokens with JsonPath

家住魔仙堡 提交于 2020-08-13 18:22:12
原文: 操作Json 和 SelectTokens with JsonPath JsonPath expression: $ the root object @ the current object .. recursive descent [] 下标操作符 * 通配符 ?() filter 条件 JToken. SelectToken SelectToken是JToken上的一个方法,它采用字符串路径到child token。如果在路径的位置找不到child token.,则SelectToken将返回子child token或空引用。 该路径由以句点分隔的属性名称和数组索引组成,e.g. Manufacturers[0].Name. JObject o = JObject.Parse(@"{ 'Stores' : [ 'Lambton Quay' , 'Willis Street' ], 'Manufacturers' : [ { 'Name' : 'Acme Co' , 'Products' : [ { 'Name' : 'Anvil' , 'Price' : 50 } ] }, { 'Name' : 'Contoso' , 'Products' : [ { 'Name' : 'Elbow Grease' , 'Price' : 99.95 }, { 'Name' :

JObject对象如何获取深度属性值&不判断key是否存在获取值&获取含有特殊字符的key值

99封情书 提交于 2020-08-12 08:03:23
  前言:我们有时常会用到JObject对象接受数据,并通过JObject快速获取指定key的值,顺序的话是没有问题的,但是假如你遇到如下的JObject对象,该怎么快速获取数据呢? { "details" : { "threeds2.fingerprint": "123" }, "paymentData": "456" }   正常情况下,你如果想获取键:threeds2.fingerprint的值,是怎么获取的?   如下: JObject jobj=Newtonsoft.Json.JsonConvert.DeserializeObject<Newtonsoft.Json.Linq.JObject> (str); string finger=jobj[ " details " ][ " threeds2.fingerprint " ];   但是这样写是存在风险的。 第一,我们没有加任何key的判断,容易报异常,那么换一种写法: Newtonsoft.Json.Linq.JObject jobj = Newtonsoft.Json.JsonConvert.DeserializeObject<Newtonsoft.Json.Linq.JObject> (str); if (jobj.ContainsKey( " details " )) { Newtonsoft.Json

Newtonsoft 六个超简单又实用的特性,值得一试 【下篇】

邮差的信 提交于 2020-07-28 10:31:43
一:讲故事 上一篇介绍的 6 个特性从园子里的反馈来看效果不错,那这一篇就再带来 6 个特性同大家一起欣赏。 二:特性分析 1. 像弱类型语言一样解析 json 大家都知道弱类型的语言有很多,如: nodejs,python,php,它们有一个🐮👃的地方就是处理json,不需要像 强类型语言 那样还要给它配一个类,什么意思呢? 就拿下面的 json 说事。 { "DisplayName": "新一代算法模型", "CustomerType": 1, "Report": { "TotalCustomerCount": 1000, "TotalTradeCount": 50 }, "CustomerIDHash": [1,2,3,4,5] } 这个 json 如果想灌到 C# 中处理,你就得给它定义一个适配的类,就如 初篇 的客户算法模型类,所以这里就有了一个需求,能不能不定义类也可以自由解析上面这串 json 呢??? 哈哈,当然是可以的, 反序列化成 Dictionary 即可,就拿提取 Report.TotalCustomerCount 和 CustomerIDHash 这两个字段演示一下。 static void Main(string[] args) { var json = @"{ 'DisplayName': '新一代算法模型', 'CustomerType': 1,

使用百度AI技术进行人体检测与属性识别

╄→尐↘猪︶ㄣ 提交于 2020-02-26 05:45:24
一、功能介绍 对于输入的一张图片(可正常解码,且长宽比适宜), 检测图像中的所有人体并返回每个人体的矩形框位置,识别人体的静态属性和行为,共支持20余种属性 ,包括:性别、年龄阶段、衣着(含类别/颜色)、是否戴帽子、是否戴眼镜、是否背包、是否使用手机、身体朝向等。 主要适用于监控场景的中低空斜拍视角 ,支持人体轻度重叠、轻度遮挡、背面、侧面、动作变化等复杂场景。 摄像头硬件选型无特殊要求,分辨率建议720p以上,更低分辨率的图片也能识别,只是效果可能有差异。 暂不适用夜间红外监控图片 ,后续会考虑扩展。 二、应用场景 1、安防监控 识别人体的性别年龄、衣着外观等特征,辅助定位追踪特定人员;监测预警各类危险、违规行为(如公共场所跑跳、抽烟),减少安全隐。 2、智能零售 商场、门店等线下零售场景,识别入店及路过客群的属性信息,收集消费者画像,辅助精准营销、个性化推荐、门店选址、流行趋势分析等应用。 3、线下广告投放 楼宇、户外等广告屏智能化升级,采集人体信息,分析人群属性,定向投放广告物料,提升用户体验和商业效率。 三、使用攻略 说明: 本文采用C# 语言,开发环境为.Net Core 2.1,采用在线API接口方式实现。 (1)、 登陆 百度智能云-管理中心 创建 “人体分析”应用,获取 “ API Key ”和 “Secret Key” :https://console.bce