Autor |
Beitrag |
sparrow
Hält's aus hier
Beiträge: 4
|
Verfasst: Fr 01.11.02 16:16
hallo !
wie kann ich wenn ich auf einen button klicke daten von einer bestimmten zeile aus einer textdatei holen ?
würde mich über hilfen und links dazu sehr freuen.
mfg,
sparrow
|
|
O'rallY
      
Beiträge: 563
|
Verfasst: Fr 01.11.02 17:05
Mittels der TStringList kannst du auf die einzelnen Zeilen leicht zugreifen. Handhabeung ist genau wie beim TMemo unt TRichEdit, da diese Kompos beide TStrings benutzen.
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var afile: TStrings; begin afile := TStringList.Create; afile.LoadFromFile('C:\datei.txt'); ShowMessage(afile[2]); //gibt dritte Zeile aus afile.free; end; |
_________________ .oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 01.11.02 17:10
Wo ist da der Ressourcen-Schutz mit try-finally?
|
|
O'rallY
      
Beiträge: 563
|
Verfasst: Fr 01.11.02 19:12
Ok, hätt mir mehr Mühe geben können, aber es geht ja nur ums Prinzip, ein vollkommen "durchgestylter" Code ist denke ich, nicht umbedingt notwendig. Aber um dich ein wenig zu beruhigen:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| var afile: TStrings; begin afile := TStringList.Create; try afile.LoadFromFile('C:\datei.txt'); ShowMessage(afile[2]); //gibt dritte Zeile aus finally afile.free; end; end; |
Ok? 
_________________ .oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...
|
|
sparrow 
Hält's aus hier
Beiträge: 4
|
Verfasst: Fr 01.11.02 20:23
danke ! ich denke das hilft mir schonmal !
|
|
sparrow 
Hält's aus hier
Beiträge: 4
|
Verfasst: Fr 01.11.02 20:43
hmm. wo ist da der fehler :
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| type TForm1 = class(TForm) procedure TForm1.FormClick(Sender: TObject); private public end;
procedure TForm1.FormClick(Sender: TObject); var afile: TStrings; begin afile := TStringList.Create; try afile.LoadFromFile('C:\datei.txt'); ShowMessage(afile[2]); finally afile.free; end;
end; |
Die Datei wird nämlich nicht compiliert.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 02.11.02 04:59
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure TForm1.Button1Click(Sender: TObject); var sl: TStringlist; begin sl := TStringlist.Create; try sl.LoadFromFile('c:\autoexec.bat'); Showmessage(sl.Strings[2]); finally sl.Free; end; end; |
|
|
sparrow 
Hält's aus hier
Beiträge: 4
|
Verfasst: Sa 02.11.02 13:46
Es kommt beim compilieren aber immer noch die meldung:
Deklaration erwartet, aber Dateiende gefunden.
|
|
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 02.11.02 14:23
Dieser Fehler steckt dann aber im Rest deiner Unit und hat mit den hier geposteten Lösungen nichts zu tun, da diese -auf die Schnelle betrachtet!- syntaktisch korrekt sind.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 02.11.02 16:09
Meine Lösung ist nicht nur syntaktisch korrekt, jetzt kommt der Hammer: Sie funktioniert sogar.  *ohwunder*
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Sa 02.11.02 16:09
Hi
ich tippe mal auf die fehlende Unit IniFiles in der Uses-Klausel.
Gruss Lothar
----
Hurra. Zeitgleich. Wenn man das mit Absicht machen wollte, würde das garantiert nicht klappen 
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Sa 02.11.02 17:36
Das darf nicht wahr sein!
Wir brauchen unbedingt nen Filter der peinliche Antworten wie die obige sofort unterdrückt.  Das kommt davon, wenn man 3 Sachen gleichzeitig machen will
IniFiles hat natürlich gar nix damit zu tun. Das gehört ganz woanders hin.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 02.11.02 17:38
Du hast mich schon in tiefste Verzweifelung gestürzt, was ich denn jetzt schon wieder übersehen hätte.
Aber laß doch bitte den Smily in Ruhe, der kann doch nun gar nichts dafür. 
|
|