質問: oSetting.value("Preset1").toString(); 【書込】 QSettings oSetting("AppFileInfo.ini", QSettings::IniFormat); oSetting.setValue("Preset1", _sPreset1); oSetting.sync();
回答: カレントディレクトリに保存されているのではないですか。 * Qtアプリの設定を保存する方法(QSettings) > > ともあれ、iniファイルを読む分には使用するコンストラクタは4つ目のみです。 > > アプリケーションを普通に起動している場合はこれだけで**カレントディレクトリ**の"some_app.ini"を読み書きできます。文字コードは必ずUTF-8にしておきましょう。文字コードで余計な問題は起こしたくないので! > > > カレントディレクトリであれば、プログラムの実行の仕方によって場所が変わってきます。 当然、ユーザが書き込みできない場所の可能性もありますので、その場合にはエラーになるでしょう。 これはWindowsでも同様です。 `QStandardPaths::writableLocation`でプラットフォーム固有の*然るべき*ディレクトリを取得できるそうなので、それで設定ファイルを書き込むべきディレクトリを取得してパスを指定するのがベストかと思います。 * OS依存のパスの取得 ``` QSettings s(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/AppFileInfo.ini", QSettings::IniFormat); ``` (QtをC++で使ったことがないんで、これでいいかはわかりませんが、こんな感じではないですか。)