Schreiben von INI-Datein



Schreiben von INI-Datein

Mario P., 26.04.2008 11:26: Hallo,
warum kommt bei mir dabei:

declare IniDatei$
IniDatei$ = $ProgDir + "IniTest.ini"
writeini Inidatei$, "Test1", "Eintrag1" = "E1"
writeini Inidatei$, "Test1", "Eintrag2" = "E2"
writeini Inidatei$, "Test1", "Eintrag3" = "E3"
writeini Inidatei$, "Test2", "Eintrag1" = "E1"
writeini Inidatei$, "Test2", "Eintrag2" = "E2"
end
immer das raus:
[Test1]
Eintrag1=E1
Eintrag2=E2
Eintrag3=E3
[Test2]
Eintrag1=E1
Eintrag2=E2
und nicht das (wie gestern bei Dietmar) :
[Test1]
Eintrag1=E1
Eintrag2=E2
Eintrag3=E3
LEERZEILE 
[Test2]
Eintrag1=E1
Eintrag2=E2
Nicht das es schlimm wäre, sieht halt mit Leerzeile nur übersichtlicher aus.
Mario


Frank Abbing, 26.04.2008 11:44: Je nach Trennzeichen (10 oder 13, 10) ist die Anzeige in Editoren verschieden.


Sebastian S., 26.04.2008 12:22: Hallo,
sowie ich das sehe, schreibt Windows XP ganz einfach keine Leerzeilen mehr in INI-Dateien. Und Dietmar hat, glaube ich, auch kein XP...
Gruss, Sebastian


Mario P., 26.04.2008 12:37: @Sebastian: Danke, an die verschiedenen Win-Version hab ich gar nicht gedacht.
Dietmar hat, glaube ich, 2000.
Hab's eben unter 98 probiert, da sind Leerzeilen in der Ini.
Die Wege von Windows und dessen (Weiter-) Entwicklung sind eben unergründlich.
Mario


David Strutz, 27.04.2008 01:00: Die Leerzeilen lassen sich einfach selbst nachträglich in die ini schreiben: (wenn diese "hübsch" aussehen soll )

file_put_contents("ini",trim$(translate$(translate$(file_get_contents("ini"),"\n\n[","\n["),"\n[","\n\n[")))
ungetestet


Jac, 27.04.2008 09:27: Aber das fügt vor dem ersten Abschnitt auch ne Leerzeile ein...


David Strutz, 27.04.2008 13:46: Ja, Trimme oder Midde


Sebastian S., 27.04.2008 14:51: Wieso, vor dem ersten Abschnitt in einer INI-Datei ist doch kein "\n"? (Habs zwar auch nicht getestet...)


Horst Horn, 27.04.2008 15:04: Auf die Schnelle zusammen getippt

DECLARE txt1$,txt2$,txt3$,txt4$
DECLARE pfad$,datei$
pfad$=GETDIR$("@"):datei$="testdaten.ini"
txt1$="Horst Horn":txt2$="Heidelberg"
txt3$="Testdaten":txt4$="in einer INI-Datei"
datei$=pfad$+"\\"+datei$
WRITEINI datei$,"Autor","Name"=txt1$
WRITEINI datei$,"Autor","Wohnort"=txt2$+"\n"
WRITEINI datei$,"Zweck","Text 1"=txt3$
WRITEINI datei$,"Zweck","Text 2"=txt4$
Einfach am Ende der Zeile VOR der Leerzeile ein +"\n" anhängen und die INI-Datei tut Dir den Gefallen


Mario P., 27.04.2008 15:58: @Horst: Die Idee hatte ich auch schon, aber mal probieren, ob dann bei 98 und co.
2 Leerzeilen draus werden, da ja anscheinend dort das System schon eine einfügt.
Mario


Mario P., 27.04.2008 16:09: ...Also bei Win 98 scheint's zu klappen !


Horst Horn, 27.04.2008 16:59: @Mario
Schreib doch eine IF-Abfrage für jede, von Dir gewünschte Leerzeile
Etwa so:

DECLARE txt1$,txt2$,txt3$,txt4$
DECLARE pfad$,datei$
pfad$=GETDIR$("@"):datei$="testdaten.ini"
txt1$="Horst Horn":txt2$="Heidelberg"
txt3$="Testdaten":txt4$="in einer INI-Datei"
datei$=pfad$+"\\"+datei$
WRITEINI datei$,"Autor","Name"=txt1$
IF $WinVer < "4.11"'4.10 ist Windows-98
   WRITEINI datei$,"Autor","Wohnort"=txt2$
ELSEIF $WinVer > "4.10"
   WRITEINI datei$,"Autor","Wohnort"=txt2$+"\n"
ENDIF
WRITEINI datei$,"Zweck","Text 1"=txt3$
WRITEINI datei$,"Zweck","Text 2"=txt4$
Dietmar hat doch bestimmt noch in Hoyerswerda auf einem Rechner Windows-98 laufen. Der kann doch testen lassen oder Dietmar ?


Dies ist die Offlinevariante vom Thread [Schreiben von INI-Datein].

Valid CSS!

©2006 XProfan.Com