TIniFile Section umbenennen
-
tagchen,
kann man irgendwie mit TIniFile die [Section] umbenennen, um neue Werte dann unter diesem Namen zu speichern? Falls es geht, wie? TCustomIniFile hat da auch nichts richtiges parat...greetz KN4CK3R
-
Interessanterweise gibt es tatsächlich keine Umbenennen-Funktion.
Also musst Du irgendwas in der Art machen:TIniFile* iniFile = new TIniFile("filename.ini"); TStringList* sectionValues = new TStringList(); iniFile->ReadSectionValues("OldSectionName", sectionValues); iniFile->EraseSection("OldSectionName"); for (int i = 0; i < sectionValues->Count; ++i) { iniFile->WriteString("NewSectionName", sectionValues->Names[i], sectionValues->Values[sectionValues->Names[i]]); }Hab ich aber nicht getestet...
Gruß
Alexander
[Edit]Names auf Values geändert - Danke an Zweifler[/Edit]
-
jop, sowas wie dein Code funktioniert. Hatte es etwas anders gemacht, aber hatte gehofft, dass es vll ne Einzeiler-Funktion gibt. Aber trotzdem danke.
greetz KN4CK3R
-
KN4CK3R schrieb:
jop, sowas wie dein Code funktioniert. Hatte es etwas anders gemacht, aber hatte gehofft, dass es vll ne Einzeiler-Funktion gibt. Aber trotzdem danke.
greetz KN4CK3R
Das müßt Ihr mir zeigen, wie der Code funktioniert.
valueNames[hier muß ein int und nicht ansiString] sein. Der Section Name wird zwar geändert, aber micht Sicherheit nicht richtig zurückgeschrieben.
Ich würde das nicht mit IniFile sondern StringList->LoadFromFile machen,
nach dem Namen suchen und nur den ändern.
-
p.s. meine Tippfehler könnt Ihr behalten

-
ich hab nicht gesagt, dass sein Code funktioniert, sondern dass das was er bezweckt funktioniert. Also zwischenspeichern und neu schreiben.
greetz KN4CK3R