Chris.ro
(Chris )
1
すべての解決策は正しいですが、文字列変数をJSONパスとして渡すにはどうすればよいですか?例えば、試してみました:
str_jsonPath = “”“main”“”(““temp”” "
val = jsonObj(str_jsonPath).ToString
// 30以上の異なるパスで多くの値を抽出する必要があるので、foreachパスで…(すべての値のパスはデータテーブルに書かれています)
// 直接書かれていれば動作します:
jsonObj(“main”)(“temp”).ToString,
jsonObj(“weather”)(0)(“main”).ToString,…
ppr
(Peter Preuss)
2
コンパイルを回避することはできません。
次のように試してみることができます。
strJSONPath = “$.main.temp”
値の読み取り
Assignアクティビティ:
strMyValue = myJObject.SelectToken(strJSONPath).Value(Of String)
intMyValue = myJObject.SelectToken(strJSONPath).Value(Of int32)
値の書き込み
Invokeメソッド内でSelectTokenとReplace関数を組み合わせます。
詳細:
Chris.ro
(Chris )
3
うまくいきました!
おめでとうございます、ありがとう @ppr
ここでは、パス内の配列の良い例があります(元のトピックのユーザーからのjsonの例を参照):
str_jsonPath = “$.weather(0).main”
val = jsonObj.SelectToken( str_jsonPath ).ToString
ありがとう @ppr
// “$.x..” と SelectToken の使い方についてはどこで学べますか?
ppr
(Peter Preuss)
4
他にもリサーチで見つかるものや、学習実験用のオンライン評価ツールなどがあります。