IBM Lotus Symphony


Instruction Put [Exécution]

Ecrit un enregistrement dans un fichier relatif ou une séquence d'octets dans un fichier binaire.

Voir aussi : Instruction Get

Syntaxe :

Put [#] FileNumber As Integer, [position], Variable

Paramètres :

FileNumber : expression de type nombre entier qui définit le fichier dans lequel vous souhaitez écrire.

Position : pour les fichiers relatifs (fichiers à accès aléatoire), numéro de l'enregistrement que vous souhaitez écrire.

Pour les fichiers binaires (accès binaire), position de l'octet dans le fichier où vous souhaitez commencer à écrire.

Variable : nom de la variable que vous voulez écrire dans le fichier.

Remarque concernant les fichiers relatifs : si le contenu de cette variable ne correspond pas à la longueur de l'enregistrement qui est spécifiée dans la clause Len de l'instruction Open, l'espace entre la fin du nouvel enregistrement écrit et l'enregistrement suivant est rempli à l'aide des données existantes du fichier dans lequel vous écrivez.

Remarque concernant les fichiers binaires : le contenu des variables est écrit à la position spécifiée et le pointeur de fichier est inséré directement après le dernier octet. Aucun espace n'est laissé entre les enregistrements.

Exemple :

Sub ExampleRandomAccess

Dim iNumber As Integer

Dim sText As Variant REM Doit être un type de variante

Dim aFile As String

aFile = "c:\data.txt"

iNumber = Freefile

Open aFile For Random As #iNumber Len=32

Seek #iNumber,1 REM Position pour démarrer l'écriture

Put #iNumber,, "Ceci est la première ligne de texte" REM Remplissez la ligne de texte

Put #iNumber,, "Ceci est la deuxième ligne de texte"

Put #iNumber,, "Ceci est la troisième ligne de texte"

Seek #iNumber,2

Get #iNumber,,sText

Print sText

Close #iNumber

iNumber = Freefile

Open aFile For Random As #iNumber Len=32

Get #iNumber,2,sText

Put #iNumber,,"Ceci est un nouveau texte"

Get #iNumber,1,sText

Get #iNumber,2,sText

Put #iNumber,20,"Ceci est le texte de l'enregistrement 20"

Print Lof(#iNumber)

Close #iNumber

end sub


Commentaires en retour sur le produit | Documentation complémentaire | Marques