Text-Datei mit Open for Input/Output

18/03/2009 - 15:41 von Matthias Fitzner | Report spam
Hallo NG,


Ich habe folgendes Problem:
Beim Erstellen von Daten muß ich eine txt-Datei mit Datensàtzen füllen

wird mit folgendem Code erledigt

Open Dateiname For Append As #1
Print #1, Data.Kostentràger & ";" & Data.Bezeichnung
Close #1

Die Datei schreibt sich solange weiter bis eine Übernahme erfolg ist,
dann wird sie gelöscht.

Bei Änderung von bestehenden Daten, suche ich den DS in der Datei über:

Open Dateiname For Input As #1
Do While Not EOF(1)
Line Input #1, test
KT = Left(test, InStr(1, test, ";") - 1)
stabnr = """" & ABNr & """"
If KT = stabnr Then
SatzNr = Seek(1)
Exit Do
End If
Loop
Close #1

SatzNr liefert mir das 1.Zeichen der Zeile nach dem DS den ich gesucht habe.

Wie kann ich jetzt die vorhandene Zeile editieren?


Gruß Mafi
 

Lesen sie die antworten

#1 Mark Doerbandt
18/03/2009 - 15:55 | Warnen spam
Hallo, Matthias,

Matthias Fitzner:

Beim Erstellen von Daten muß ich eine txt-Datei mit Datensàtzen füllen

wird mit folgendem Code erledigt

Open Dateiname For Append As #1
Print #1, Data.Kostentràger & ";" & Data.Bezeichnung
Close #1

Die Datei schreibt sich solange weiter bis eine Übernahme erfolg ist,
dann wird sie gelöscht.

Bei Änderung von bestehenden Daten, suche ich den DS in der Datei über:

Open Dateiname For Input As #1
Do While Not EOF(1)
Line Input #1, test
KT = Left(test, InStr(1, test, ";") - 1)
stabnr = """" & ABNr & """"
If KT = stabnr Then
SatzNr = Seek(1)
Exit Do
End If
Loop
Close #1

SatzNr liefert mir das 1.Zeichen der Zeile nach dem DS den ich gesucht habe.

Wie kann ich jetzt die vorhandene Zeile editieren?



ich wuerde statt dessen immer die Datei komplett neu schreiben. Du
hast sie ja "For Append" offen, d.h. Du kannst anfügen. Anfuegen ist
aber etwas anderes als einfügen. ;-)

Gruss - Mark

Ähnliche fragen