Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ist Textfile initialisiert? (https://www.delphipraxis.net/84107-ist-textfile-initialisiert.html)

smudo 11. Jan 2007 12:29


Ist Textfile initialisiert?
 
Einer Prozedur soll ein Textfile übergeben werden.
Um den weiteren Verlauf in der Proc festzulegen, möchte ich nun prüfen, ob der Datei schon mit AssignFile ein Name zugewiesen wurde.

Beide folgenden Aufrufe funktionieren leider nicht:
Delphi-Quellcode:
if Assigned(FileOut) then ...
if FileOut <> Nil then ...
Wie kann man das prüfen?

René

mkinzler 11. Jan 2007 12:41

Re: Ist Textfile initialisiert?
 
M.W. gar nicht.

smudo 11. Jan 2007 12:44

Re: Ist Textfile initialisiert?
 
Das wäre schade.
So scheint mir nur die Möglichkeit zu bleiben, ein Rewrite zu versuchen und die Exception abzufangen.

Muetze1 11. Jan 2007 12:45

Re: Ist Textfile initialisiert?
 
Delphi-Quellcode:
If ( TTextRec(FileOut).Handle <> INVALID_HANDLE_VALUE ) Then

marabu 11. Jan 2007 12:48

Re: Ist Textfile initialisiert?
 
Hallo,

ich würde TTextRec.Mode testen - nach dem AssignFile() ist der Wert fmClosed.

Grüße vom marabu

smudo 11. Jan 2007 13:28

Re: Ist Textfile initialisiert?
 
Sorry, ich habs leider mit beiden Varianten nicht hinbekommen.
Ich hab das FileHandling halt erstmal mit in die Prozedur übernommen.
Danke trotzdem.

Muetze1 11. Jan 2007 16:33

Re: Ist Textfile initialisiert?
 
Aso, Entschuldige. Mein Code funktioniert nur, wenn die Datei auch schon geöffnet wurde (ReWrite, Reset oder Append). Daher Prüfe einfach ob der Dateiname schon enthalten ist:

Delphi-Quellcode:
If ( TTextRect(FileOut).Name[0] <> #0 ) Then

3_of_8 11. Jan 2007 16:35

Re: Ist Textfile initialisiert?
 
Du könntest dir auch ein Flag setzen und das dann überprüfen.


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