Cette fonction permet d'écrire une série de données ASCII ou ANSI dans un fichier texte. Le texte est inséré à la position courante du fichier.
Important : pour un alias donné, la dll VaToolBx doit être déjà chargée (ordre CHARGER_DLL) au moment de l'appel de la fonction VaToolBxOpenFile, et doit rester chargée au moment de l'appel de la fonction VaToolBxWriteFile.
Domaine d'application
Client Windows,
Serveur Windows,
Client Mobile,
Serveur Mobile,
Client Java,
Serveur Java,
Client Adélia Web,
Client Adélia Cloud.
Remarque : la gestion de l'encodage et le mode 'i' ne sont pas pris en compte en génération mobile.
Paramètres
ALPHA(n) |
Alias |
Nom du fichier. |
ALPHA(n) |
Buffer |
Texte à écrire par la fonction. |
NUM_BIN_4 |
Lg |
Nombre de caractères à écrire. Si cette valeur est supérieure à la longueur de la chaîne Buffer, on complétera par des caractères blancs. En mode 'octet', la longueur Lg ne doit pas être supérieure à celle de la taille n du Buffer (ou n*2 en génération C/UNICODE, Java). |
NUM_BIN_4 |
CodeRetour |
Code retour de l'opération : 0 L'opération s'est déroulée correctement. 2 L'alias n'est pas défini. 5 L'écriture ne s'est pas réalisée 11 Conversion des caractères est impossible. 13 Mode d'ouverture non valide. |
Remarques :
Par défaut (mode 't' ou 'b'), si aucun encodage n'est précisé dans le mode d'ouverture du fichier, alors le texte est encodé en ANSI même si le programme hôte est généré en UNICODE. Si un encodage est précisé, alors les éventuels caractères blancs ajoutés en complément suivent cet encodage.
En mode 't', le caractère linefeed est toujours remplacé par la séquence carriage return-linefeed.
Génération ANSI 0A -> 0D-0A (si destEnc=ANSI, ASCII ou UTF-8) ; 0D-00-0A-00 (si destEnc=UTF-16LE) ; 00-0D-00-0A (si destEnc=UTF-16BE...)
Génération Unicode (C) 0A-00 -> 0D-0A (si destEnc=ANSI, ASCII ou UTF-8) ; 0D-00-0A-00 (si destEnc=UTF-16LE) ; 00-0D-00-0A (si destEnc=UTF-16BE...).
Par exemple
Alias = 'FichierTexte'
Buffer = 'Texte à ajouter'
Lg = &LONGUEUR_CHAINE(Buffer)
APPELER_DLL 'VATOOLBX.DLL' 'VaToolBxWriteFile' Alias Buffer Lg CodeRetour