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
hoffe ihr könnt helfen
EDIT: hm, hat auf einmal doch funktioniert
ka warum
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;

EDIT: hm, hat auf einmal doch funktioniert

Zuletzt bearbeitet: