のカスタム形式を作成しようとしていますQSettings
が、ストレージから読み取ることができません。
以下のコードでは、 を実行するsettings.setValue("test", 123")
と、書き込み関数が正しく呼び出され、 が出力されCalling writeSqlite
ます。ただし、試してみるとsettings.value("test")
、 read 関数が呼び出されず、出力されませんCalling readSqlite
。
何が問題になる可能性がありますか?
bool readSqlite(QIODevice &device, QSettings::SettingsMap &map) {
qDebug() << "Calling readSqlite";
return true;
}
bool writeSqlite(QIODevice &device, const QSettings::SettingsMap &map) {
qDebug() << "Calling writeSqlite";
return true;
}
void Settings::initialize() {
const QSettings::Format SqliteFormat = QSettings::registerFormat("sqlite", &readSqlite, &writeSqlite);
QSettings::setDefaultFormat(SqliteFormat);
QSettings settings;
// This doesn't work:
// qDebug() << settings.value("test");
// This works:
// settings.setValue("test", 123456);
}