UiPath|JSON取得|Deserialize JSON / JToken|JSONから値を安全に取り出す
■ 基本構文
Deserialize JSON
JObject("キー名")
JArray(インデックス)Deserialize JSON
JSON文字列を JObject または JArray に変換する
戻り値:Newtonsoft.Json.Linq.JToken
jsonObj("キー名")
オブジェクト型JSONから値を取得
戻り値:JToken
jsonArray(0)
配列型JSONからインデックス指定で取得
戻り値:JToken
■ サンプルコード
JSON文字列から指定キーの値を取得する
理由:Deserialize JSON で JToken に変換してから参照する必要がある
注意:キーが存在しない場合は Nothing になる
Deserialize JSON の出力 → jsonToken (JToken)
Dim jsonObj As JObject = CType(jsonToken, JObject)
Dim userName As String = jsonObj("name").ToString配列要素の中の値を取得する
理由:JArray → JObject の順でキャストする
注意:インデックス範囲外は例外になる
Dim jsonObj As JObject = CType(jsonToken, JObject)
Dim items As JArray = CType(jsonObj("items"), JArray)
Dim firstId As String = items(0)("id").ToString■ 備考
Deserialize JSON の戻り値は 必ず JToken
JObject / JArray は CType で明示的に変換する
.ToString を付けないと String にならない
キー不存在時は Nothing → 事前チェック推奨
APIレスポンスは 構造をログで必ず確認する
いいなと思ったら応援しよう!
技術メモや学習の整理として書いています。
もし内容が役に立ったり、続きを読みたいと思っていただけたら、
応援として受け取らせてもらえたら嬉しいです。