見出し画像

PowerShell JSONデータの作成

PowerShellでJSONデータを作成する方法は何通りかあります。



直接JSONを記述する

@”と”@で囲って直接記述できます。

$age = 123
$name = "cortana"

$json = @"
{
  "age": $($id),
  "name": $($name)
}
"@


コンソール画面に$json と打ち込むと変数$jsonの中身がJSONデータになっていことがわかります。
もっとも基本的な構文。


ConvertTo-Jsonを利用してハッシュテーブルをJSONに変換

直接JSONを記述する方法だと項目を追加できないのでハッシュテーブルを変換してJSONを扱う方が便利です。

$hash = @{
  age = 123;
  name = "cortana"
  moji = "ABCあいう";
  ireko = @{ a = "A"; b = 1; };
  hairetsu = @(
    "Apple", "Banana"
  )
}
$json = $hash | ConvertTo-Json


$hashが変換されてJSONデータになっています。

ハッシュテーブルを上書き

元の$hashを上書きしてみます。

# ハッシュに要素を上書きしてみる
$hash.moji = "こんにちわコルタナです"
$hash.ireko["a"] = "AAA"
$json = $hash | ConvertTo-Json

上書きが反映されているのが分かります。

ハッシュテーブルに要素追加

元の$hashに要素を追加してみます。

# ハッシュに要素を追加してみる
$hash.tsuikatest = 98765
$json = $hash | ConvertTo-Json

要素が追加されJSONにも反映されています。



JSONファイルを作成する

ファイルに書き込む

# ファイルに書き込む
$json | ConvertTo-Json -Depth 32 | Out-File "c:\temp\test.json"


逆にファイルを読み込む場合

$jsonData =(Get-Content "c:\temp\test.json" | ConvertFrom-Json)



#PowerShell #プログラミング #プログラミング学習 #JSON  #Windows #コマンドレット

いいなと思ったら応援しよう!