Entwickler-Ecke
Dateizugriff - eine bestimmte Alzahl Zeichen pro Zeile aus Textfile lesen
Wolfgang - Mo 30.01.06 09:13
Titel: eine bestimmte Alzahl Zeichen pro Zeile aus Textfile lesen
Hi!
Ich hab schon überall gesucht aber ich finds nicht.
Kann mir bitte wer sagen wie ich eine bestimmte Anzahl an Zeichen pro Zeile aus einem Textfile einlesen kann?
Beispiel:
Block1 Block2 Block3
Jetzt möchte ich die ersten 10 Zeichen einlesen, anschließend dei nächsten 15 danach die letzten 20. Diesen Vorgang möchte ich für jede Zeile wiederholen, bis ich das Ende des Textfiles erreiche.
Habs mit Read und BlockRead probiert, funktioniert aber nicht.
thx im Vorhnein
Horst_H - Mo 30.01.06 09:19
Hallo,
wie meinst Du das genau.
Kannst Du nicht einfach eine Zeile einlesen und dann mit copy zerlegen??
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| while NOT(EOF(TextDatei)) do begin readln(TextDatei,strEingeleseneZeile); strBlock1:=copy(strEingeleseneZeile,1,10); strBlock2:=copy(strEingeleseneZeile,11,15); strBlock3:=copy(strEingeleseneZeile,26,20); MachWaS; end; |
Gruss Horst
Wolfgang - Mo 30.01.06 09:32
Danke Horst!
Ich kannte diesen Befehl noch nicht. Programmiere erst seit etwa zwei Monate.
Jetzt funktioniert es problemlos.
Danke sehr!
Wolfgang - Mo 30.01.06 09:42
Hi!
Nur eins noch.
Wenn ich die Daten jetzt wieder speichern will, wie kann ich sie dann wieder an der gleichen Stelle speichern, an der ich sie eingelesen habe?
thx
Horst_H - Mo 30.01.06 13:29
Hallo,
nein, kann man so einfach nicht.
Ueblicherweise wird eine Textdatei zeilenweise:
eingelesen,verarbeitet und in eine andere Textdatei weggeschrieben.
Anschliessend kann man die Dateien loeschen, umbenennen. (erase,rename
http://www.delphibasics.co.uk/ByFunction.asp?Main=Files ).
Gruss Horst
Wolfgang - Mo 30.01.06 13:39
Hi Horst!
Macht nichts.
Ich lade die Daten einfach zuerst in RichEdit und verwende dann SaveToFile. Müsste eigentlich funktionieren, wenn ich darauf achte, dass im Textfile immer die richtige Anzahl an Leerschritten hinter den Worten stehen.
Hab zwar gerade kein Delphi zur Hand aber:
Delphi-Quelltext
1:
| RichEdit1.Lines.Add(strBlock1+ strBlock2 + strBlock3) |
müsste gehen, da er mit copy ja die Leerzeichen mitkopiert.
Wenn du was besseres weißt oder die Möglichkeit Schrott ist, kannst du mir das ja noch mitteilen.
Danke für deine Hilfe. Weiß ich zu schätzen!
thx Wolfgang
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!