AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

fehler E/A 105

Ein Thema von Mosi17 · begonnen am 21. Apr 2007 · letzter Beitrag vom 21. Apr 2007
Antwort Antwort
Mosi17

Registriert seit: 17. Apr 2007
10 Beiträge
 
#1

fehler E/A 105

  Alt 21. Apr 2007, 14:16
Delphi-Quellcode:
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);
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.
Falls einer die Lösung des Problems kennt, wär ich sehr dankbar für Hilfe...
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: fehler E/A 105

  Alt 21. Apr 2007, 14:21
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
Klaus
  Mit Zitat antworten Zitat
Mosi17

Registriert seit: 17. Apr 2007
10 Beiträge
 
#3

Re: fehler E/A 105

  Alt 21. Apr 2007, 21:32
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:
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);
und zwar bei dem "rewrite(datei)"
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: fehler E/A 105

  Alt 21. Apr 2007, 21:44
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);
Markus Kinzler
  Mit Zitat antworten Zitat
Mosi17

Registriert seit: 17. Apr 2007
10 Beiträge
 
#5

Re: fehler E/A 105

  Alt 21. Apr 2007, 21:46
also datei ist vom typ textfile;

und danke für den hinweis, sieht wirklich besser aus
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: fehler E/A 105

  Alt 21. Apr 2007, 21:51
Kann es sein, daß die entsprechende Datei schon geöffnet ist?
Markus Kinzler
  Mit Zitat antworten Zitat
Mosi17

Registriert seit: 17. Apr 2007
10 Beiträge
 
#7

Re: fehler E/A 105

  Alt 21. Apr 2007, 22:14
hast recht, war noch aus einer anderen prozedur geöffnet.
danke hat sich erledigt
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz