WRSEQ |
Wrseqpermet d'écrire des données sur un fichier texte ouvert par Openo ou Openio.
Wrseqliste_expr[ sep ] [Usingclasse ]
Elément | Description | Restrictions |
Liste d'expressions quelconques à écrire, séparées par ',' ou ';'. | Aucune. | |
Séparateur pouvant être ',' ou ';'. | Aucune. | |
Abréviation désignant le fichier ouvert. | Aucune. |
# Rajout d'une ligne au fichier passwd dans le répertoire de connexion
# (il a la structure du fichier /etc/passwd)
Char NAME(20), PASSWORD(20)
Integer USR_NO, GROUP_NO
Char COMMENT(50), LOGIN_DIR(50), SHELL_USED(50)
NAME = "toto"
USR_NO = 0
GROUP_NO = 0
COMMENT = "test"
LOGIN_DIR = ""
SHELL_USED = ""
PASSWORD = ""
Openo getenv$("HOME")+"/passwd", -1
adxifs = ':' : adxirs = chr$(10)
Wrseq NAME,PASSWORD, USR_NO, GROUP_NO,
Wrseq COMMENT,LOGIN_DIR, SHELL_USED
Openo
# Ecriture sur 3 fichiers séquentiels
Char MOT1(30)
Char MOT2(30)
Char MOT3(30)
adxifs = ':' : adxirs = chr$(10)
Openo filpath('TRT','ZINSTRUC1','txt') Using [FIC1]
Openo filpath('TRT','ZINSTRUC2','txt') Using [FIC2]
Openo filpath('TRT','ZINSTRUC3','txt') Using [FIC3]
MOT1 = "abcde"
MOT2 = "fghij"
MOT3 = "klmno"
Wrseq
Wrseq
Wrseq
Openo Using [FIC1]
Openo Using [FIC2]
Openo Using [FIC3]
Wrseqpermet d'écrire dans un fichier texte des enregistrements séparés par un séparateur d'enregistrements composés d'un nombre quelconque de champs eux-mêmes séparés par un séparateur de champs.
Wrseqs'utilise conjointement avec les variables système Adonix adxirs pour définir le séparateur d'enregistrements et adxifs pour définir le séparateur de champs et adxium pour définir le codage de la chaîne de caractères :
Ces trois variables peuvent être affectées pour chaque fichier pour l'instruction Iomode.
Attention ! Wrseq ne peut pas écrire un fichier codé en UCS2.
Si l'ordre Wrseq ne se termine ni par ',' ni par ';', le séparateur d'enregistrements (valeur de adxirs) est écrit sur le fichier.
Les variables numériques ou de type date sont automatiquement convertiesdans le fichier en chaînes de caractères, comme si l'on avait utilisé lafonction Adonix num$.
Chaque champ écrit peut comporter un maximum de 255 caractères.
La clause Using permet de préciser la classe du fichier séquentiel surlequel on écrit. Il est maintenant possible de traiter plusieurs fichiersséquentiels en même temps.
On peut écrire un clob vers un fichier séquentiel au format défini par adxiumpar l'instruction Wrseq.Le fichier aura alors le nombre de caractères du clob.
La fonction adxseek(1) ou adxseek(classe) (pour un fichier ouvert avec uneclasse) permet de connaître la position courante dans le fichier par rapport audébut (en nombre d'octets). Cette variable est égale à -1 si aucun fichier n'aété ouvert en écriture par Openo ou Openio.
Les écritures dans un fichier étant bufferisées, elles ne sont effectivesqu'après la fermeture de ce fichier par une des instructions Openo ou Openio.Ceci implique qu'avant cette opération, la taille du fichier sur disque peutêtre inchangée après des Wrseq.
"Seek 0" permet de forcer l'écriture d'un fichier qui a été ouvertpar Openio.
ERDIM(55) | Variableayant plus d'une dimension. |
ERULIM(65) | Problèmede ulimit (le fichier est trop gros). |
ERGFIC(24) | Fichiernon ouvert. |
ERMDISK(44) | Plusde place sur le disque. |
Adonix X3(r) L4G |