Delphi fehler beim einlesen einer datei

F.b

Lieutenant
Registriert
Feb. 2008
Beiträge
514
hallo,
ich habe versucht eine datei in delphi einzulesen. in den einzelnen zeilen steht am anfang ein buchstabe und danach drei kommazahlen. wenn ich versuche die strings dieser kommazahlen in einen real umzuwandeln, wirft delphi zur laufzeit einen fehler mit EAccessViolation, außer bei der ersten zahl

Code:
procedure loadfile;
var
 f : TextFile;
 i,c,b : Integer;
 s : Array[0..7000] Of String;
 ve : Array[1..20000] Of ObjVertex;
 s1,s2,s3 : String;
 verc,pr : Integer;
begin
 assign(f,'waffe.obj');
 reset(f);
 i := 0;
 while i <= filesize(f) do
 begin
  readln(f,s[i]);
  inc(i);
 end;
 i := 0;
 verc := 0;
 while s[i][1] = '#' do inc(i);
 for c := i+1 to filesize(f) do
 begin
  if(s[c][1] = 'v')
   then
   begin
    b := 3;
    s1 := '';
    s2 := '';
    s3 := '';
    while (s[c][b] <> ' ') do
    begin
     s1 := s1 + s[c][b];
     inc(b);
    end;
    inc(b);
    while (s[c][b] <> ' ') do
    begin
     s2 := s2 + s[c][b];
     inc(b);
    end;
    inc(b);
    while(b <= length(s[c])) do
    begin
     s3 := s3 + s[c][b];
     inc(b);
    end;
    Val(s1,ve[verc].x,pr);
    Val(s2,ve[verc].y,pr);
    Val(s3,ve[verc].z,pr);
    inc(verc);
   end;
 end;
end;
hoffe ihr könnt helfen;)

EDIT: hm, hat auf einmal doch funktioniert:rolleyes: ka warum
 
Zuletzt bearbeitet:
Zurück
Oben