UiPath 解析JSON

我搭建了个人博客, 欢迎访问: blog.joelzho.com

零. 示例数据

我的测试数据是一个 json.json 文件, 放在工作目录中.
数据内容如下:

{
	"name": "Joel",
	"age": 23,
	"info": {
		"height": 170.25,
		"weight": "55 kg"
	},
	"friends": ["Jeft", "Doly", "Miyana"]
}

我这里只写如何解析JSON, 并不考虑数据是如何读取进来的.

一. 添加依赖

1. 点击UIPath Studio 顶部的 Manage Packages 按钮 (快捷键 CTRL + P )

2. 选中 All Packages

3. 搜索 UIPath.Web.Activities

4. 安装依赖

UiPath 解析JSON_第1张图片

二. 添加 Deserialize JSON 组件到工作中

1. 从右边的Activities 窗口中搜索 Deserialize JSON (这些组件只有在安装了UIPath.Web.Activities才有)

2. 拖到编程窗口

UiPath 解析JSON_第2张图片

三. 输入参数

1. 选中刚才拖进来的Deserialize JSON组件, 右边会出现 这个组件的Properties界面

2. 将 Input 下的 JsonString 填写成我们读取进来的 json 文本(或其他方式获得的String类型数据)

3. 新建一个变量, 类型为 JObject (我这里取名为:jsonObject)

JObject 的具体类型为: Newtonsoft.Json.Linq.JObject
UiPath 解析JSON_第3张图片

四. 从 JObject 中读取数据

我们可以通过括号的方式访问JObject中的数据, 用等号表达式来表示的话, 如下

Newtonsoft.Json.Linq.JToekn var = jsonObject("name")

从表达式可以看出, 用这种括号访问方式返回的总是Newtonsoft.Json.Linq.JToekn 对象.

关于用圆括号访问:
本人没学过 vb.net, 我用我已经学过的语言来解释这个问题.
如果你写过 C# 等语言的话, 你会发现只是将方括号替换成圆括号了,
类似于一种操作符重载?

如果在 C# 中, 我们可能会这样读取这个数据

var nameToken = jsonObject["name"];

下面列举了如何读取示例json中的数据

例如我读取 name 的值, 用 Write Line 组件输出到控制台,
那么我 Write Line 中的表达式为:

jsonObject("name").ToString()

输出 info 下的 weight

jsonObject("info")("height").ToString()

输出friends 数组下的第二个元素 (会编程的人都知道数组下标都是从 0 开始的)

jsonObject("friends")(1).ToString()

UiPath 解析JSON_第4张图片

你可能感兴趣的:(UiPath)