OPENI |
Openipermet d'ouvrir ou de fermer un fichier séquentiel en lecture seulement.
Openi [ exp_nomfic [, exp_depl ] ] [ Usingabrev]
Elément | Description | Restrictions |
Expression de type Char dont le résultat est le chemin d'un fichier (Unix ou MS-DOS) | Aucune. | |
Expression numérique de la valeur initiale du déplacement (seek). | 0 <= exp_depl <= taille dufichier. | |
Abréviation désignant le fichier ouvert. | Aucune. |
# Ouverture d'un fichier avec saut des 10 premiers caractères
Openifilpath('tmp','rdfile',''), 10
# Fermeture du dernier fichier ouvert pour lecture
Openi
# On veut lire sur l'entrée standard (clavier)
Openi "*"
# Ouverture d'un fichier se trouvant sur la machine "distrib"
Openi"distrib@"+[L]NOMFIC
# Ouverture du fichier X3.ini se trouvant sur le client
Openi"#@C:\X3\X3.ini"
# Ouverture de deux fichiers
Openifilpath('tmp','rdfile1','') Using [YYY]
Openifilpath('tmp','rdfile2','') Using [ZZZ]
# Fermeture des deux fichiers précédemment ouvert
Openi Using [YYY]
Openi Using [ZZZ]
Openipermet d'ouvrir un fichier pour lecture par Rdseq et Getseq.
Par convention, le poste client est désigné par le serveur #.
La valeur donnée en 2ème paramètre permet de débuter les lectures à une position donnée du fichier. En son absence, ou s'il est nul, la lecture débutera en début de fichier. Dans tous les cas, l'ordre Seek permet de se déplacer pendant la lecture. La fonction adxseek(0) ou adxseek(abrev) permet de connaître la position dans le fichier.
La clause Using permet d'attribuer une abréviation à un fichier séquentiel ouvert. Par conséquent, il est possible d'ouvrir jusqu'à 16 fichiers séquentiels simultanément sous réserve de la valeur du paramètre adxmso.
Fichier sans abréviation :
Fichier avec abréviation :
Si le fichier est inexistant, une erreur (PAFIC) sera provoquée.
Si Openi est utilisé avec un nom de fichier égal à '*', l'entrée standard d'Adonix (en principe le clavier) est affectée au fichier ouvert, permettant de lire les caractères du clavier sans décodage.
En web, il n'est pas possible d'ouvrir un fichier sur le poste client.
ERMODE(10) | exp_nomfic n'est pas de type Char ou exp_depl n'est pas de type numérique. |
ERDOM(50) | exp_depl< 0. |
ERACCE(27) | Accès impossible (permission refusée). |
PAFIC(20) | Fichier (ou répertoire du chemin d'accès) inexistant. |
ERSEEK(57) | Le fichier est l'entrée standard (exp_nomfic='*') et exp_depl <> 0. |
ERCHAN(60) | Pas assez de canaux pour l'ouverture (qui en nécessite un). |
ERSYST(25) | Erreur système (problème à la connexion sur machine distante). |
OPENO - OPENIO - SEEK - GETSEQ - PUTSEQ - RDSEQ - WRSEQ - IOMODE - ADXIFS - ADXIRS - ADXIUM - ADXSEEK - ADXMAC - ADXMSO
Adonix X3(r) L4G |