私は個人的な C# プロジェクトに取り組んでおり、ネストされたディクショナリを使用して、将来の settings.ini ファイルの読み取り/書き込みのために settings.ini ファイル値の保存を処理したいと考えています。私のsettings.iniファイルは次のもので構成されています:
[Application]
AutoShowSetting=Log
SettingsIniDirectory=Application
LogDirectory=Application
...
次のように、2 つの for each ループを使用して、settings.ini ファイルから情報を読み取ります。
public void storeIniValues()
{
int i = 0;
string[] sectionNames = iniFile.GetSectionNames();
foreach (string section in sectionNames)
{
string[] keys = iniFile.GetKeyNames(section);
foreach (string key in keys)
{
string keyValue = iniFile.GetString(section, key, "");
i++;
}
}
}
foreach は値を取得し、その値を対応する文字列変数に配置します。foreach ループをループしながら値を取得し、その値をディクショナリに配置して、後で settings.ini ファイルを読み取り/書き込み/更新したいと考えています。これまでのところ、辞書を作成しました。
static Dictionary<string, Dictionary<string, string>> iniSettings =
new Dictionary<string, Dictionary<string, string>>();
iniSettings["Application"]["AutoShowSetting"]のようにネストされた辞書から ini 値にアクセスして、対応する値 (この場合は "Log") を取得するにはどうすればよいですか? また、 foreach ループがループしている間に、ネストされた Dictionary に値を追加するにはどうすればよいですか (settingsIni[section][key] = keyValue)? ネストされた Dictionary を使用したことがないため、どこから始めればよいかわかりません。
編集
settings.iniファイルがチェックボックス、テキストボックスなどを設定するための値を保持することを忘れていました...