Page de démarrage > lang > read 
 en de es it nl pl pt pt_BR mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Précédent  Suivant  Éditer  Renommer  Annuler  Rafraîchir  Rechercher  Administration  
Documentation
Historique
 
Attention! La traduction de cette page n'est pas à jour.  Voir la version anglaise 
READ

Variable = READ [ # Flux ] AS TypeDonnée
Variable = READ [ # _ Flux _ , ] Longueur

Lecture d’un type de données spécifique

La première syntaxe lit le flux Flux en données binaires dont le type est spécifié par l’argument TypeDonnée. La représentation binaire est celle utilisée par l’instruction WRITE.

Si le flux n’est pas précisé, l’entrée standard est utilisée.

Le type de donnée retourné est l’un des suivants : NULL, Boolean, Byte, Short, Integer, Long, Pointer, Single, Float, Date, String, Variant, tout tableau, Collection ou structure.

Lors de la lecture d’une chaîne, la longueur de la chaîne doit précéder son contenu dans le flux de données, comme spécifié dans Représentation des données binaire.

Si le contenu du flux ne peut être interprété, une erreur est générée.

Cette instruction utilise l’ordre des octets de flux pour lire les données.

Lecture du contenu d’une chaîne

La deuxième syntaxe lit à partir d’un flux Flux un nombre d’octets spécifié par l’argument Longueur, et les retourne sous forme de chaîne.

Si le flux n’est pas précisé, l’entrée standard est utilisée.

Compatibilité avec Gambas 2

WRITE #Stream, Expression écrit la forme binaire de l’ Expression en Gambas 2.0. En Gambas 3.0 il écrit Expression sous forme de chaîne.

Vous DEVEZ donc vérifier toutes vos instructions WRITE quand vous convertissez un projet Gambas 2.0 vers 3.0, et spécifier AS TypeDonnée quand c’est nécessaire.

Par défaut, le compilateur gère l’ancienne syntaxe Read et l’ancienne syntaxe WRITE quand c’est compatible.

Si vous voulez déterminer a quels endroits il vous faut réécrire votre syntaxe READ / WRITE , vous pouvez compiler votre projet à la main avec le fanion "--no-old-read-write-syntax". Alors, l’argument Length de WRITE devient obligatoire si la seconde syntaxe est employée.

L'utilisation d'un pointeur comme flux n'est plus possible. Créez, à la place, un flux mémoire avec l'instruction MEMORY .

Voir aussi

Flux & fonctions d'Entrée/Sortie, Stream.ByteOrder, Représentation des données binaire, External Function Management