Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Inputquery+wirteln-->E/A-Fehler 105 (https://www.delphipraxis.net/138670-inputquery-wirteln-e-fehler-105-a.html)

NDR 14. Aug 2009 18:34


Inputquery+wirteln-->E/A-Fehler 105
 
Nabend :hi:

Bei meinen derzeitigen Projekt hab ich wieder ein kleines Problemchen :glaskugel:


Kurze Beschreibung:
Es soll in einen Eingabedialog eine Eingabe gemacht werden können und diese beim Klick auf 'OK' an einen Textdatei angehängt werden, andernfalls soll eine Meldung ausgeben werden, dass nichts Hinzugefügt wurde.

Delphi-Quellcode:
procedure TForml.Hinzufgen1Click(Sender: TObject);
var Datei:Textfile; Eingabe:String; ClickedOK: Boolean;
  begin
  AssignFile(Datei,ExtractFilePath(ParamStr(0))+'\liste.txt');
  reset(Datei);
  Eingabe := 'Default String';
  ClickedOK := InputQuery('Neue Kategorie anlegen', 'Bitte geben Sie eine neue Kategorie ein:', Eingabe);
  if ClickedOK then          
    writeln(Datei,'[' + Eingabe + ']')
  else
    showmessage('Es wurde keine neue Kategorie angelegt!');
  end;
Das Problem: Dialog erscheint-->Eingabe wird gemacht und mit 'OK' bestätigt-->Vorgang wird mit der Meldung 'E/A-Fehler 105' abgebrochen und der Zeiger wird auf die Zeile -->writeln(Datei,'[' + Eingabe + ']')<-- gesetzt.

Könnt Ihr mir da weiterhelfen?

mfg NDR

haentschman 14. Aug 2009 18:40

Re: Inputquery+wirteln-->E/A-Fehler 105
 
Hallo,

vieleicht hilft ein Blick hier :zwinker:

NDR 14. Aug 2009 19:20

Re: Inputquery+wirteln-->E/A-Fehler 105
 
Sorry aber hab mir den Beitrag, der unter deLink zu finden war, mehrfach durchgelsen, verschiedenes ausprobiert, aber der fehler bleibt... Delphihilfe bringt mich auch nicht weiter...
Im übertragenen Sinne "Ich seh den Wald vor lauter Bäumen nicht" :cry:

mkinzler 14. Aug 2009 19:25

Re: Inputquery+wirteln-->E/A-Fehler 105
 
ExtractFilePath() liefert schon einen BackSlash
Delphi-Quellcode:
AssignFile(Datei,ExtractFilePath(ParamStr(0))+'liste.txt');
reicht also.

Ausserdem ist Reset() fürs Öffen zum Lesen

Klaus01 14. Aug 2009 19:26

Re: Inputquery+wirteln-->E/A-Fehler 105
 
Guten Abend,

mit reset werden TextDateien (File of Text) nur lesend geöffnet.
Wenn Du etwas anhängen willst benutze append.
Oder wenn Du sie überschreiben willst ist rewrite der richtige Kandidat.

Oder setze gleich eine TStringList ein
und benutze sie für Dateioperationen.

Grüße
Klaus

NDR 15. Aug 2009 14:10

Re: Inputquery+wirteln-->E/A-Fehler 105
 
Hi :hi:
Nachdem gestern abend mein Inet nich mehr verfügbar war schreibe ich jetzt halt :angel2:
Also als erstes vielen Dank für die hilfreichen Vorschläge :thumb:
Hab das ganze nun dank des Hinweises von Klaus01 mit 'append' lösen können, den Fehler in dem Dateipfad hab ich auch behoben (wieder was dazu gelehrnt) :-D
Was aber keinen aufgefallen war ist das die geöffnete Datei net wieder geschlossen wird-->auch behoben :angel:

Also nochmals Vielen dank für die Hilfe
mfg NDR
:dp:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:25 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