![]() |
Dateien auslesen
Hallo,
hab probleme beim auslesen einer datei. folgender code:
Delphi-Quellcode:
Problem: Die erste Zeile wird übersprungen.
While not EOF(f1) do begin
Readln(f1,s); k := Length(s); Match_ID.Text := IntToStr(j); Matchdate.Text := Copy(s,1,8); i := Pos(' ', s); q := Pos(':', s); Home_Team.Text := Copy(s,i+1,(q-1)-i); i := Pos(':', s); Out_Team.Text := Copy(s,i+2,(k-3)-(i+2)); Home_Goals.Text := Copy(s,k-3,1); Out_Goals.Text := Copy(s,k-1,1); DBNavigator1.BtnClick(nbInsert); j := j+1; end; Hinweis: Die Daten sollen an eine Datenbank übergeben werden... hier noch ein kleiner auszug aus der datei 10.08.07 VfB Stuttgart : FC Schalke 04 2:2 11.08.07 FC Bayern München : F.C. Hansa Rostock 3:0 11.08.07 VfL Bochum 1848 : Werder Bremen 2:2 eintrag in die edit-felder 1.datensatz: 11.08.07 FC Bayern München : F.C. Hansa Rostock 3:0 Vielen Dank im voraus |
Re: Dateien auslesen
Zeig mal die ein oder zwei Zeilen vorher.
P.S.: Willkommen in der DP :dp: |
Re: Dateien auslesen
Code:
das sind die zeilen davor
var f1 : Textfile;
s : String; i, j, k, l, m, q, r : Integer; str : boolean; begin r:=1; j := 0; AssignFile(f1,'..\Saison.txt'); Reset(f1); if FileExists('..\Saison.txt') then begin While not EOF(f1) do begin |
Re: Dateien auslesen
Außer einer fehlenden Fehlerbehandlung kann ich auf den ersten Blick nichts erkennen. Wie äußert sich das "Überspringen" denn genau?
|
Re: Dateien auslesen
Alle Datensätze werden eingelesen, nur die erste Zeile eben nicht.
Ansonsten funktioniert die Schleife tadellos! |
Re: Dateien auslesen
Hast Du mal versucht, statt des Klicks auf einen Navigator-Button die Daten direkt einzutragen (z.B. über die Methode Insert von TDataset)?
|
Re: Dateien auslesen
Leider ist es mir momentan noch nicht möglich mit diesen Befehlen zu arbeiten. Bis jetzt haben wir das
nur mit dieser Navileiste gemacht. einen tdataset habe ich nicht gefunden. und der tibdataset beinhaltet keinen insert befehl. danke aber schonmal für die mühe |
Re: Dateien auslesen
Sonst setz doch mal einen Breakpoint auf die Zeile
Zitat:
|
Re: Dateien auslesen
also ich weiß jetzt wo der fehler liegt, die datensätze werden erst beim zweiten aufruf von btnclick
eingetragen, den grund dafür weiß ich aber nicht. die elemente sind alle vom typen tib... gibt es eine möglichkeit ohne die dbedit felder direkt die daten in eine tabelle zu schreiben? z.b. insert --> TABELLE.SPALTE(inhalt) |
Re: Dateien auslesen
Du gehst ja auch falsch vor.
Richtig wäre es so (Pseudocode) :
Delphi-Quellcode:
So, das wars dann für die Woche...
assign...
reset... // ioresult nicht vergessen !! readln (f1... while not EOF... ...// verarbeiten readln (f1... end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz