Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 10:06

Hallo zusammen,

ich möchte die Zeilen einer Textdatei auslesen und jede Zeile in einer Textvariablen zwischenspeichern. Das Problem ist nun, daß manche Zeilen mehr als 1024 Zeichen haben können. Ich habe mir bereits überlegt, die Zeilen in eine
BigText -Variable einzulesen. Jedoch habe ich dann das Problem, daß der geamte Inhalt der Textdatei in der Variablen steht und ich nicht weiß, wie ich die einzelnen Zeilen trennen kann, da diese ja keine feste Länge haben.

Hat irgendjemand damit schon Erfahrungen gemacht?

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 10:49

schau mal hier rein.

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 11:05

Hab ich schon gesehen. Hier wird jedoch über den TEXTMODE gesteuert, dass maximal 1024 Zeichen eingelesen werden sollen. Ich möchte jedoch die GANZE Zeile einlesen.

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 11:17

Nur so eine Idee:
Textmode := FALSE
Zeichen für Zeichen einlesen, bis du auf 0D und/oder 0A (13/10) triffst.
Am besten schon zwischendurch auf Trennzeichen achten und die bisher gelesenen Werte in entsprechende Variablen parken.

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 11:23

hm, in meinen augen liegt die antwort irgendwie doch schon in dem thread.

ich kann doch einfach den textmode auf "true" lassen, dann aber per read befehl eine bigtext variable angeben. dann habe ich exakt eine zeile in der bigtext variable und nicht die gesamte datei. oder steh ich da jetzt auf dem schlauch?

und falls man es mit textmode "false" einliest, könnte man die zeilen im nachhinein dennoch aufsplitten per schleife und überprüfung auf newlinecharacter, wobei es halt euch einfach zeilenweise geht wie ich meine.

daniel

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 11:33

Das Einlesen per READ-Befehl funktioniert leider nicht. Hier sind anscheinend keine BigText-Variablen zugelassen, sondern nur "normale" Textvariablen.

Re: Textdatei mit überlangen Zeilen einlesen

7. Oktober 2009 11:40

weil ich es jetzt doch genau wissen wollte, habe ich es eben auf ner testform mal schnell ausprobiert.
bei mir funktioniert es exakt wie beschrieben (nav 2009 sp 1)

einlesen in eine bigtext variable geht per myFile.read auch

auf die schnelle:
Code:
fileVar.TEXTMODE(TRUE);
fileVar.WRITEMODE(FALSE);
fileVar.OPEN('C:\test.txt');

fileVar.read(bigtextVar);


-> genau die erste zeile (auch wenn überlang) steht in meiner bigtextVar.