Search this site
Embedded Files
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
  • More
    • Accueil
    • BBC BASIC
    • BBC OS
    • BBC MODULES
    • RUBRIQUES
    • LIENS

⇨ MENU ⇨ BBC BASIC

OPENOUT()

DESCRIPTION.


La fonction OPENOUT() créée un fichier, en détruisant éventuellement tout fichier de même nom absolu, l'ouvre en écriture seule et retourne le numéro de canal de communication qui lui sera associé.




SYNTAXE.


kfichier& = OPENOUT( fichier )




REMARQUES.


fichier doit être une chaine de caractères, ou une variable de type $, et correspondant au nom d'un fichier valide. fichier peut être exprimé de façon : 

- absolue, indiquant le support, le chemin d'accès, le nom et l'extension du fichier ;

- relative, indiquant son nom et son extension, il est supposé se trouver dans un dossier par défaut.


Note. Il est important de fermer proprement un fichier, avec l'instruction CLOSE #, dès que son utilisation n'est plus requise par le programme. De même, l'instruction END finalisera l'enregistrement des données sur le support non-volatil.


Pour créer un nouveau fichier de données, on utilise la fonction OPENOUT(). L'appel de cette fonction va créer un nouveau fichier sur le support désigné, en suivant le chemin d'accès donné, avec le nom indiqué, si aucune extension n'est précisée, BBC BASIC ajoutera .BBC par défaut. Si un fichier de même nom existe déjà à cet emplacement, il sera écrasé, détruit. 


Ensuite, la fonction OPENOUT() retourne un nombre entier qui indique le canal d'accès du fichier. Cette référence sera exigée pour chaque enregistrement dans le fichier. Il faudra donc placer cette valeur dans une variable, du type octet (&) de préférence. Il est vivement conseillé de nommer cette variable du même nom, avec le suffixe &, que celui utilisé, avec le suffixe $, pour identifier le fichier, surtout si le programme doit manipuler plusieurs fichiers.


Contrairement à la fonction OPENUP(); la fonction OPENOUT() ne peut pas être utilisée pour lire les enregistrements présents dans le fichier. 


La fonction OPENOUT() ne peut être associée à un fichier qui serait déjà ouvert en écriture avec une fonction OPENUP() ou une fonction OPENOUT().


Notez que le numéro de canal attribué au fichier à sa création et ceux qui lui seront associés lors de ses utilisations suivantes peuvent être différents.


Note : sous Windows de Microsoft, la syntaxe OPENOUT( "" ), ou si fichier contient un ? ou un *, une boite de dialogue pour sélectionner le fichier à ouvrir sera affichée.


Voir l'instruction OPENIN() qui ouvre un fichier en lecture et retourne le numéro de canal du fichier.

Voir l'instruction OPENUP() qui ouvre un fichier en lecture/écriture et retourne le numéro de canal du fichier.

Voir le module filedlg.bbc qui propose des fonctions pour sélectionner un fichiers dans un explorateur de fichiers.




RUBRIQUE.


Les fichiers de données pour plus de détails sur la création et l'utilisation des fichiers de données.




EXEMPLE.


REM --- Initialisation ---

kfichier$ = @dir$ + "Tester.txt"


REM --- Création du fichier et enregistrement ---

kfichier& = OPENOUT( kfichier$ )

PRINT #kfichier&, "BBC BASIC SDL 2.0"

PRINT #kfichier&, "Mon BBC BASIC pas a pas"

PRINT #kfichier&, "Origine NERD"

CLOSE #kfichier&


REM --- Lecture des enregistrements avec OPENIN ---

kfichier& = OPENIN( kfichier$ )

INPUT #kfichier&, kdonnee$ : PRINT kdonnee$

INPUT #kfichier&, kdonnee$ : PRINT kdonnee$

INPUT #kfichier&, kdonnee$ : PRINT kdonnee$

CLOSE #kfichier&


REM --- Fin de l'exemple ---

END


retourne :

BBC BASIC SDL

Mon BBC BASIC pas a pas

Origine NERD


Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de

vos remarques, vos commentaires et de vos suggestions.

Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour

TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER

avec un exemple de résolution à télécharger pour vous inspirer.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse