Entwickler-Ecke
Sonstiges (Delphi) - Textdatei_anzeigen
abc - Di 13.04.04 17:31
Titel: Textdatei_anzeigen
Hi,
wie kann ich aus einer Textdatei die 1. Zeile in Label1 und
die 2. Zeile in Label2 anzeigen lassen?
z.Bsp.: Wenn ich eine Datei namens Test.txt habe, mit dem Inhalt:
(1.zeile) blabla1
(2.zeile) blabla2
Durch einen klich auf einen Button soll dann die 1. Zeile in Label1
und die 2.Zeile in Label2 dargestellt werden.
Wie mache ich das?
Danke.
Grüße.
Tilo - Di 13.04.04 17:46
Dazu müßte folgender(unfolständuger) code gut sein:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption:=Readln(Textdatei); Label2.Caption:=Readln(Textdatei); end; |
Die Textdatei muss beim Starten des Programms geöffnet werden.
Die Textdatei darf erst zum Ende des Programms geschlossen werden, sonst klappt dieser Code nicht.
Ist auch nicht der eleganteste. Für Mehr Labels wurde ich einen komplexeren Code empfehlen. Für 2 bis 5 Labels ist diese Variante noch gerade so zu vertreten.
Moderiert von
Motzi: Code- durch Delphi-Tags ersetzt.
Delete - Di 13.04.04 22:58
Tilo hat folgendes geschrieben: |
Die Textdatei muss beim Starten des Programms geöffnet werden.
Die Textdatei darf erst zum Ende des Programms geschlossen werden, sonst klappt dieser Code nicht.
|
Nö. Du musst sie nur vor dem Lesen öffnen und man sollte sie nach dem lesen wieder schließen. Das kann auch in der ButtonKlick-Prozedur geschehen.
Desweiteren ist
Readln eine Prozedur und keine Funktion:
Delphi-Quelltext
1:
| procedure Readln([ var F: Text; ] V1 [, V2, ...,Vn ]); |
Aber mit einer StringListe (
TStringList) kommt er wahrscheinlich schneller zum Ziel. Näheres dazu in der Hilfe unter gleichnamigen Stichwort.
bms - Di 13.04.04 23:21
Den ganzen Tag die gleiche Frage:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var sl: TStringList; begin sl := TStringList.Create; try sl.LoadFromFile('c:\autoexec.bat');
if sl.Count >=2 then begin Label1.Caption := sl.Strings[0]; Label2.Caption := sl.Strings[1]; end; finally sl.Free; end; end; |
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!