![]() |
fehler E/A 105
Delphi-Quellcode:
Bei der unterstrichenen Zeile erhalten ich immer den oben genannten Fehler. Falls ich ein rewrite(datei) davor setzte kommt er nicht und es klappt alles wunderbar, doch das ist ziemlich schlecht für mich, weil ich mehrere Highscores in dieser einen Datei speichern möchte.
reset(datei);
[...] if zahl2=0 then begin [u]writeln(datei,name);[/u] writeln(datei,inttostr(zeit)); end else begin for i:=1 to zahl2*2 do begin readln(datei); end; writeln(datei,name); writeln(datei,inttostr(zeit)); end; end; closefile(datei); Falls einer die Lösung des Problems kennt, wär ich sehr dankbar für Hilfe... :wink: |
Re: fehler E/A 105
Textdateien kannst Du nicht mit reset zum Schreiben öffnen.
Das geht nur mit typisierten Dateien (record). Versuche es einmal mit append, damit wird etwas an die Datei angehängt. Oder steige auf StringListen um. Dort kannst Du direkt in der Liste etwas ändern. Du kannst damit auch direkt Zeilen ansprechen, nützlich, wenn immer etwas in der gleichen Zeile steht. Ansonsten bleibt Dir nicht viel anderes übrig als die Daten immer zu kopieren und in eine neue Datei (rewrite) zu schreiben und diese dann wieder umzubennen. Grüße Klaus |
Re: fehler E/A 105
hab es jetzt anders gelöst. speichere die erforderlichen daten in ein array. so dass mir das rewrite kein problem mehr machen würde...so aber jetzt gibts ein neues Problem - ich erhalte den E/A Fehler 32 bei dieser Stelle:
Delphi-Quellcode:
und zwar bei dem "rewrite(datei)"
if rb_sehrleicht.checked=true
then assignfile(datei,'highscores/sehrleicht.txt'); if rb_leicht.checked=true then assignfile(datei,'highscores/leicht.txt'); if rb_mittel.checked=true then assignfile(datei,'highscores/mittel.txt'); if rb_schwierig.checked=true then assignfile(datei,'highscores/schwierig.txt'); if rb_sehrschwierig.checked=true then assignfile(datei,'highscores/sehrschwierig.txt'); name:=ed_name.Text; [...] rewrite(datei); for i:=0 to 4 do begin writeln(datei,highscore[i,0]); writeln(datei,highscore[i,1]); end; closefile(datei); |
Re: fehler E/A 105
Welche Typ hat Datei?
Ich würde zudem so vereinfachen:
Delphi-Quellcode:
if rb_sehrleicht.checked=true then fname := 'highscores/leicht.txt';
... assignfile(datei,fname); |
Re: fehler E/A 105
also datei ist vom typ textfile; :roll:
und danke für den hinweis, sieht wirklich besser aus :-) |
Re: fehler E/A 105
Kann es sein, daß die entsprechende Datei schon geöffnet ist?
|
Re: fehler E/A 105
hast recht, war noch aus einer anderen prozedur geöffnet.
danke hat sich erledigt :-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:10 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