single.php

C# WinUI3で、JSON形式のファイルをDictionary変数に読み込む手順

C# WinUI 3アプリを作っていく途中で、調べたことを忘録的に投稿します。今回はJSON形式のファイルからDictionary型の変数に読み込む場合の手順です。

[JsonSerializer]クラス使った読み取り

JSONファイルから内容を読み込む場合に[JsonSerializer]クラスを利用すると簡単にアクセスが可能です。

例えば、以下のようなJSON形式のファイルを読み込む場合

{
  "Apple": 100,
  "Orange": 120,
  "Grape": 150
}

次のようなコードで変数に読み取りが可能です。

public static Dictionary<string, int> Load()
{
  var baseDir = AppContext.BaseDirectory;
  var jsonPath = Path.Combine(baseDir, "config.json");

  if (!File.Exists(jsonPath))
    throw new FileNotFoundException("config.json が見つかりません", jsonPath);

  var jsonFile = File.ReadAllText(jsonPath);
  var result = JsonSerializer.Deserialize<Dictionary<string, int>>(jsonFile);
  if (result == null || result.Count == 0)
    throw new InvalidDataException("config.json の形式が不正です");

  return result;
}

まとめ

今回は、短い記事ですが、JSON形式のファイルからDictionary型の変数に読み込む場合の方法について紹介しました。

[JsonSerializer]クラスを利用すると、JSON形式ファイルからDictionary形式の変数に読み込みが可能です。

WinUI 3 アプリで、JSON形式のファイルの内容を変数化したい人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です