Seite 1 von 1

[gelöst] QSettings: Subdirectory-Path?

Verfasst: 28. Januar 2008 14:58
von Bagstone
Hallo,

ich benutze QSettings zum abspeichern von einfachen Einstellungen.
Nun hätte ich gerne folgenden Speicherort:
$homedir/.config/appName/versionString/settings.ini

Ich kriege aber diesen versionString nicht hin, wenn ich versuche den appName im QSettings-Konstruktor auf "appName/"+versionString zu setzen, erzeugt er auch kein Unterverzeichnis...

Jemand eine Idee, oder geht das garnicht? (Qt 4.3.1, muss auf Linux+Windows funktionieren)

Verfasst: 28. Januar 2008 15:15
von franzf

Code: Alles auswählen

QSettings s("orga/app/version/config")
-> QSettings::QSettings ( const QString & fileName, Format format, QObject * parent = 0 )

Noch schnell ein Beispiel angehangen:

Code: Alles auswählen

#include <QSettings>
#include <QDebug>

int main( int argc, char** argv )
{
    QSettings settings("Orga", "app");
    QSettings settings2("Orga/app/0.1/config");
    qDebug() << settings.fileName();
    qDebug() << settings2.fileName();
    return 0;
}
Erzeugt folgenden Output:

Code: Alles auswählen

$ ./settings
"/home/franz/.config/Orga/app.conf"
"/home/franz/.config/Orga/app/0.1/config.conf"

Verfasst: 28. Januar 2008 16:09
von Bagstone
Danke dir.
versionString war einfach leer, darum ist der Schrägstrich ignoriert und das Unterverzeichnis nicht erstellt worden. Aber es ging so wie du gesagt hattest, als ich dass mal behoben hatte.

Manchmal sieht man den Wald vor lauter Bäumen nicht ;-)