Hallo, guten tag.
Ich möchte eine Zeile bitte ändern im Text uns zwar immer die 2. Zeile
-------------------------------------------
FEATURES {
STARTADDRESS: default = $3000;
}
SYMBOLS {
__EXEHDR__: type = import;
__STARTADDRESS__: type = export, value = %S;
}
--------------------------------------------
Danke.
Gruss
Ein String in einer Datei ändern, wie geht das bitte ?
Re: Ein String in einer Datei ändern, wie geht das bitte ?
Wenn eine Text-Datei eine Zeile ändern möchtest muss immer die gesamte Datei eingelesen und neu geschrieben werden.
Also die Datei im eine LinkedList laden und in dieser die Änderung ausführen, Danach die Datei neu schreiben.
Also die Datei im eine LinkedList laden und in dieser die Änderung ausführen, Danach die Datei neu schreiben.
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
- juergenkulow
- Beiträge: 188
- Registriert: 22.12.2016 12:49
- Wohnort: :D_üsseldorf-Wersten
Re: Ein String in einer Datei ändern, wie geht das bitte ?
Hallo funkheld,
Edit: Abfrage Datei vorhanden, Procedure RetteProgramm
Code: Alles auswählen
DateiName$="E:\FEATURES.TXT"
Datei=OpenFile(#PB_Any,DateiName$)
DateiLaenge=Lof(Datei)
If 0=DateiLaenge : Declare RetteProgramm() : RetteProgramm() : EndIf
ErsteZeile$=ReadString(Datei)
ZweiteZeile$=ReadString(Datei)
DateiPosition=Loc(Datei)
RestLaenge=DateiLaenge-DateiPosition
*Buffer=AllocateMemory(RestLaenge)
ReadData(Datei,*Buffer,RestLaenge)
CloseFile(Datei)
Datei=CreateFile(#PB_Any,DateiName$)
WriteStringN(Datei,ErsteZeile$)
WriteStringN(Datei," STARTADDRESS: default = $F00;")
WriteData(Datei,*Buffer,RestLaenge)
CloseFile(Datei)
End
Procedure RetteProgramm()
Shared DateiName$,Datei,DateiLaenge
MessageRequester("Info",
DateiName$+" Datei ist nicht vorhanden. Es wird "+GetTemporaryDirectory()+
"FEATURES.TXT erzeugt.")
CloseFile(Datei)
DateiName$=GetTemporaryDirectory()+"FEATURES.TXT"
Datei=CreateFile(#PB_Any,DateiName$)
WriteStringN(Datei,"FEATURES {")
WriteStringN(Datei," STARTADDRESS: Default = $3000;")
WriteStringN(Datei,"}")
WriteStringN(Datei,"SYMBOLS {")
WriteStringN(Datei," __EXEHDR__: type = Import;")
WriteStringN(Datei," __STARTADDRESS__: type = export, value = %S;")
WriteStringN(Datei,"}")
CloseFile(Datei)
Datei=OpenFile(#PB_Any,DateiName$)
DateiLaenge=Lof(Datei)
ProcedureReturn Datei
EndProcedure
Bitte stelle Deine Fragen, denn den Erkenntnisapparat einschalten entscheidet über das einzig bekannte Leben im Universum.
Jürgen Kulow Wersten :D_üsseldorf NRW D Europa Erde Sonnensystem Lokale_Flocke Lokale_Blase Orion-Arm
Milchstraße Lokale_Gruppe Virgo-Superhaufen Laniakea Sichtbares_Universum
Jürgen Kulow Wersten :D_üsseldorf NRW D Europa Erde Sonnensystem Lokale_Flocke Lokale_Blase Orion-Arm
Milchstraße Lokale_Gruppe Virgo-Superhaufen Laniakea Sichtbares_Universum