2016-09-24 7 views
0

ich QSettings bin mit einem ini-Format-Datei ohne eine Gruppe zu analysieren, wie diese:Schreiben Sie eine Taste auf oberster Ebene mit QSettings

msg=45 
id=69 

So weit so gut, aber wenn ich versuche, ein zu schreiben neuen Schlüssel, geht es wie folgt aus:

[General] 
new=100 
msg=45 
id=69 

Mein Ziel, so etwas zu haben ist:

msg=45 
id=69 
new=100 

Dies ist mein Code fro Schreiben:

QSettings settings(m_rcFile, QSettings::IniFormat); 
settings.setValue("new", num); 

Ich kenne die meisten ini-Dateien Gruppe/Schlüssel/Wert haben, aber da QSetings können sie ohne eine Gruppe lese ich aber, dass es für das Schreiben das gleiche tun. Irgendwelche Ideen?

Antwort

0

scheint im Einklang mit den documentation zumindest, was sagt

, wenn Sie eine Top-Level-Einstellung speichern (einen Schlüssel ohne Schrägstriche in ihm, zum Beispiel „somekey“), ist es in der INI erscheint Datei "Allgemein" Abschnitt.

darunter gerade sagt

die Philosophie verfolgt, die wir in liberal sein sollte, was wir akzeptieren und konservativ in dem, was wir erzeugen, QSettings wird [...]

die, während Sie eine andere Eigenart ansprechen, könnte erklären, warum QSettings Werte von einem Nicht-Abschnitt lesen kann, aber sich weigert, dort zu schreiben.

Fazit: Sie brauchen einen anderen Ansatz (eine andere Bibliothek oder eine Low-Level-Klasse wie QFile/QTextStream), um diese Werte zu schreiben, wenn Sie sie wirklich nicht in einen Abschnitt einfügen können.

+0

Die Sache ist, dass die Ini-Datei benutzerdefinierte Werte haben kann. – Joel

Verwandte Themen