xaumichi
Goto Top

Beliebige Zeile bearbeiten

Hallo!

Ist es in KIXTART möglich, in einer Datei (in meinem Fall eine *.dat - Datei) eine bestimmte Zeile zu bearbeiten, sprich: der in dieser bestimmten Zeile stehende Text durch einen neuen ersetzen?
Diese Datei sieht wie folgt aus:

text - zeile1
text - zeile2
text - zeile3
text - zeile4
text - zeile5
text - zeile6
text - zeile7
TRUE
text - zeile8
text - zeile9
text - zeile10

Und dieses "TRUE" möchte ich durch ein "FALSE" ersetzen.
Ist dies irgendwie machbar??

Content-ID: 93014

Url: https://administrator.de/contentid/93014

Ausgedruckt am: 05.11.2024 um 15:11 Uhr

JJKix
JJKix 09.08.2008 um 21:40:33 Uhr
Goto Top
Hallo,

das geht. Du musst dabei Zeile für Zeile die Datei auslesen, jede Zeile untersuchen und in eine andere Datei schreiben. Danach umbenennen (oder schon vorher).

Hier ein Beispiel:
Break On

$Datei1 = "C:\Datei1.dat" ; dies ist die Datei, die geändert werden soll
$Datei2 = "C:\Datei2.dat"

; Löschen
Del $Datei2

; Umbenennen
Move $Datei1 $Datei2

$FFH2 = FreeFileHandle()

If Open($FFH2, $Datei2, 2) = 0
$FFH1 = FreeFileHandle()
If Open($FFH1, $Datei1, 5) = 0
$Line = ReadLine($FFH2)
While @16034 = 0
If InStr($Line, "TRUE")
$Line = Left($Line, InStr($Line, "TRUE") - 1) + "FALSE" + SubStr($Line, InStr($Line, "TRUE") + Len("TRUE"))
EndIf
$Ret = WriteLine($FFH1, $Line + @crlf)
$Line = ReadLine($FFH2)
Loop
$Ret = Close($FFH1)
EndIf
$Ret = Close($FFH2)
EndIf
xaumichi
xaumichi 10.08.2008 um 13:29:07 Uhr
Goto Top
Hallo!

Hey DANKE für diese ausführliche Lösung!!! face-smile

mfg