Vérification du fichier est ouvert dans Delphi
Est-il un moyen de vérifier si un fichier a été ouvert par le Réécrire en Delphi?
Code serait quelque chose comme ceci:
AssignFile(textfile, 'somefile.txt');
if not textFile.IsOpen then
Rewrite(textFile);
source d'informationauteur JamesSugrue | 2008-09-26
Vous devez vous connecter pour publier un commentaire.
Vous pouvez obtenir le filemode. (Un instant, je vais créer un exemple).
TTextRec(txt).Mode vous donne le mode:
De recherche TTextRec dans le système de l'unité pour plus d'informations.
Essayez ceci:
Cela fonctionne bien:
Je l'ai trouvé plus facile de garder une variable booléenne comme un compagnon; exemple:
bFileIsOpen
. Partout où le fichier est ouvert, ensemblebFileIsOpen := true
ensuite, chaque fois que vous avez besoin de savoir si le fichier est ouvert, il suffit de tester cette variable; exemple:if (bFileIsOpen) then Close(datafile);
Joseph réponse fonctionne parfaitement - j'ai appelé la fonction
filenotopen
et changé la ligne sià
J'ai également supprimé la ligne "si ce n'(Suite), puis commencer" (et la "fin") afin de TOUJOURS fermer la poignée ou les affectations ultérieures et lit des erreurs
J'ai maintenant l'appeler comme cela