FB um INI-Dateien zu schreiben

Begonnen von Richardt, 11. September 2011, 13:56:19

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

Richardt

Hallo,

der Funktionsbaustein INI_PARSER_FILE ist echt super. Allerdings fehlt mir ein Funktionsbaustein um diese INI-Datei zu erstellen bzw. Werte in dieser Datei zu aktualisieren. Ist so was in Planung?

Ansonsten würde ich auch selbst so einen Funktionsbaustein programmieren. Dazu benötige ich aber den Quellcode von INI_PARSER_FILE um mich daran zu orientieren.

peewit

#1
hallo

ini dateien schreiben gibt es noch nicht

ich habe diese idee bislang auf eis gelegt, da ich keine optimale idee hatte, wie man es machen soll

was du sicher hinbekommst ist die plumpe version, einfach mit einer leeren datei beginnen und mit den sections und keys vollschreiben



die bessere idee wäre eine bestehende ini-datei ohne zerstörung aktualisieren zu können
das heisst an beliebiger stelle keys bzw. section hinzuzufügen bzw auch löschen und aktualisieren zu können
dabei kann es sein das eine section oder key plötzlich länger oder kürzer ist, dann wird die aktualisierung schwierig ohne dabei die ganze init-datei völlig neu zu schreiben

und das aber mit beliebige grossen ini-dateien die in keinen buffer insgesamt passen
dabei ist das problem das es offiziell keine byte insert oder delete funktion bei dateien gibt

diese idee ist sehr schwer umzusetzen
(das wäre das was ich machen würde.... aber fast unrealisitisch)


aber es freut mich wenn sich jemand kreativ einbringen möchte, und programmiert
solltest du irgendwelche fragen zu meinen network.lib bausteinen haben, dann kannst du mich ja gerne kontaktieren

überlege dir mal ein konzept

was soll der baustein genau können

alle anderen sind dabei auch eingeladen, hier ideen einzubringen

die bibliothek ist ja nicht gesperrt, du must ja nur die bibliothek als projekt offnen, dann siehst du ja den quellcode des ini-parser-file bausteins !

gruss peewit

io123

Hallo,

ich möchte an dieser Stelle den alten Beitrag nochmals hoch holen.

Ich bin bei der Network.lib auf den Baustein "INI_PARSER_FILE" getroffen, der such ja und gibt mir entsprechende Eintrage (Value) zurück.
Könnte man nun den Ini-Schreib-Baustein doch so machen, dass er nach einem "Key" sucht und dort ein "Value" eintragen kann?
Dafür bräuchte man halt schon eine Ini-Datei bei der die "Values" bei den "Keys" fehlt. Würde bei meiner aktuellen Aufgabe aber nicht stören.


mfg
michael

peewit

Hallo

Wenn es so einfach waere haette ich es schon laengst gemacht
Das problem ist wenn sich mitten drinnen die anzahl der zeichen aendert
Es gibt beim filesystem kein zeichen einfuegen oder loeschen
Somit muesste man einen buffer haben in dem die ganze datei geladen wird, veraendert wird,und komplett wieder zurueck geschrieben wird

Es fehlt momentan noch an einerwirklich guten idee



Majaestix

Hallo peewit,

ob meine Idee wirklich gut ist, mögen andere entscheiden, deshalb hier mein Vorschlag:

Schreiben: Neue Werte immer ans Ende der Datei, ggf. mit einem Zeitstempel.
Lesen: Rückwärts parsen bis zum ersten = aktuellsten gesuchten Wert.
Reorg: Eigene Routine, löscht allemehrfach Sätze bis auf den letzten = aktuellsten und läuft separat.

Gruss

Majaestix