Package | flash.utils |
Interface | public interface IDataInput |
Implémenteurs | ByteArray, FileStream, Socket, URLStream |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Toutes les opérations IDataInput et IDataOutput utilisent l’ordre d’octet « bigEndian » par défaut (où l’octet le plus significatif de la séquence est mémorisé dans l’adresse de stockage de plus bas niveau ou dans la première adresse de stockage) et ne sont pas bloquantes. Si les données disponibles sont insuffisantes, une exception EOFError
est renvoyée. Utilisez la propriété IDataInput.bytesAvailable
pour déterminer le volume de données disponible pour la lecture.
L’extension de signe ne joue un rôle que lors de la lecture des données et non lors de leur écriture. Il est donc inutile d’utiliser des méthodes d’écriture distinctes pour faire appel à IDataInput.readUnsignedByte()
et IDataInput.readUnsignedShort()
. En d’autres termes :
- Utilisez
IDataOutput.writeByte()
avecIDataInput.readUnsignedByte()
etIDataInput.readByte()
. - Utilisez
IDataOutput.writeShort()
avecIDataInput.readUnsignedShort()
etIDataInput.readShort()
.
Eléments de l’API associés
endian
Classe FileStream
Classe Socket
Classe URLStream
Classe ByteArray
Classe EOFError
Propriété | Défini par | ||
---|---|---|---|
bytesAvailable : uint [lecture seule]
Renvoie le nombre d’octets de données disponibles pour la lecture dans le tampon de saisie. | IDataInput | ||
endian : String
Ordre d’octet des données, à savoir la constante BIG_ENDIAN ou LITTLE_ENDIAN de la classe Endian. | IDataInput | ||
objectEncoding : uint
Permet de déterminer si le format AMF3 ou AMF0 est utilisé lors de l’écriture ou la lecture des données binaires à l’aide de la méthode readObject(). | IDataInput |
Méthode | Défini par | ||
---|---|---|---|
Lit une valeur booléenne dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit un octet signé dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit le nombre d’octets de données spécifié par le paramètre length dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit un nombre à virgule flottante à deux décimales, conforme à IEEE 754, extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit un nombre à virgule flottante à une décimale, conforme à IEEE 754, extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit un entier signé de 32 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit une chaîne multi-octets de longueur spécifiée dans le flux de fichiers, le flux d’octets ou le tableau d’octets en utilisant le jeu de caractères spécifié. | IDataInput | ||
readObject():*
Lit un objet codé au format AMF sérialisé dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit un entier signé de 16 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit un octet non signé dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit un entier non signé de 32 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit un entier non signé de 16 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets. | IDataInput | ||
Lit une chaîne UTF-8 dans le flux de fichiers, le flux d’octets ou le tableau d’octets. | IDataInput | ||
Lit une séquence d’octets UTF-8 dans le flux ou le tableau d’octets et renvoie une chaîne. | IDataInput |
bytesAvailable | propriété |
bytesAvailable:uint
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Renvoie le nombre d’octets de données disponibles pour la lecture dans le tampon de saisie. Le code utilisateur doit appeler bytesAvailable
pour garantir que les données disponibles sont suffisantes avant leur lecture à l’aide de l’une des méthodes read.
Implémentation
public function get bytesAvailable():uint
endian | propriété |
endian:String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ordre d’octet des données, à savoir la constante BIG_ENDIAN
ou LITTLE_ENDIAN
de la classe Endian.
Implémentation
public function get endian():String
public function set endian(value:String):void
Eléments de l’API associés
objectEncoding | propriété |
objectEncoding:uint
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Permet de déterminer si le format AMF3 ou AMF0 est utilisé lors de l’écriture ou la lecture des données binaires à l’aide de la méthode readObject()
. La valeur est une constante extraite de la classe ObjectEncoding.
Implémentation
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
Eléments de l’API associés
readBoolean | () | méthode |
public function readBoolean():Boolean
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit une valeur booléenne dans le flux de fichiers, le flux d’octets ou le tableau d’octets. Un seul octet est lu, et la valeur true
est renvoyée s’il n’est pas nul, false
dans le cas contraire.
Boolean — Valeur booléenne, true si l’octet correspond à une valeur non nulle, false dans le cas contraire.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readByte | () | méthode |
public function readByte():int
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un octet signé dans le flux de fichiers, le flux d’octets ou le tableau d’octets.
Valeur renvoyéeint — La valeur renvoyée est comprise entre -128 et 127.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readBytes | () | méthode |
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit le nombre d’octets de données spécifié par le paramètre length
dans le flux de fichiers, le flux d’octets ou le tableau d’octets. Les octets sont lus dans l’objet ByteArray spécifié par le paramètre bytes
, à partir de la position indiquée par offset
.
Paramètres
bytes:ByteArray — Objet ByteArray contenant les données à lire.
| |
offset:uint (default = 0 ) — Décalage dans le paramètre bytes où la lecture des données doit commencer.
| |
length:uint (default = 0 ) — Nombre d’octets à lire. La valeur 0 (par défaut) provoque la lecture de toutes les données disponibles.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readDouble | () | méthode |
public function readDouble():Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un nombre à virgule flottante à deux décimales, conforme à IEEE 754, extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeNumber — Nombre à virgule flottante à deux décimales et conforme au standard IEEE 754.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readFloat | () | méthode |
public function readFloat():Number
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un nombre à virgule flottante à une décimale, conforme à IEEE 754, extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeNumber — Nombre à virgule flottante à une décimale et conforme au standard IEEE 754.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readInt | () | méthode |
public function readInt():int
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un entier signé de 32 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeint — La valeur renvoyée est comprise entre -2147483648 et 2147483647.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readMultiByte | () | méthode |
public function readMultiByte(length:uint, charSet:String):String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit une chaîne multi-octets de longueur spécifiée dans le flux de fichiers, le flux d’octets ou le tableau d’octets en utilisant le jeu de caractères spécifié.
Paramètres
length:uint — Nombre d’octets à lire dans le flux d’octets.
| |
charSet:String — Chaîne désignant le le jeu de caractères à utiliser pour interpréter les octets. Parmi les chaînes de jeu de caractères possibles figurent "shift-jis" , "cn-gb" , "iso-8859-1" , etc. Pour obtenir la liste complète, voir la section Jeux de caractères pris en charge.
Remarque : si la valeur du paramètre |
String — Chaîne au format UTF-8.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readObject | () | méthode |
public function readObject():*
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un objet codé au format AMF sérialisé dans le flux de fichiers, le flux d’octets ou le tableau d’octets.
Valeur renvoyée* — Objet désérialisé
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
Eléments de l’API associés
readShort | () | méthode |
public function readShort():int
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un entier signé de 16 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeint — La valeur renvoyée est comprise entre -32768 et 32767.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readUnsignedByte | () | méthode |
public function readUnsignedByte():uint
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un octet non signé dans le flux de fichiers, le flux d’octets ou le tableau d’octets.
Valeur renvoyéeuint — La valeur renvoyée est comprise entre 0 et 255.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readUnsignedInt | () | méthode |
public function readUnsignedInt():uint
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un entier non signé de 32 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeuint — La valeur renvoyée est comprise entre 0 et 4294967295.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readUnsignedShort | () | méthode |
public function readUnsignedShort():uint
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit un entier non signé de 16 bits extrait du flux de fichiers, du flux d’octets ou du tableau d’octets.
Valeur renvoyéeuint — La valeur renvoyée est comprise entre 0 et 65535.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readUTF | () | méthode |
public function readUTF():String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit une chaîne UTF-8 dans le flux de fichiers, le flux d’octets ou le tableau d’octets. La chaîne doit être précédée d’un caractère non signé indiquant la longueur en octets.
Cette méthode est similaire à la méthode readUTF()
de l’interface IDataInput Java®.
String — Chaîne UTF-8 générée par la représentation des caractères sous forme d’octets.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
readUTFBytes | () | méthode |
public function readUTFBytes(length:uint):String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Lit une séquence d’octets UTF-8 dans le flux ou le tableau d’octets et renvoie une chaîne.
Paramètres
length:uint — Nombre d’octets à lire.
|
String — Chaîne UTF-8 de longueur spécifiée, générée par la représentation des caractères sous forme d’octets.
|
Valeur émise
EOFError — Les données à lire ne sont pas suffisantes.
|
DataInputExample
pour écrire une valeur booléenne et la représentation à virgule flottante à deux décimales de pi dans un tableau d’octets. Pour ce faire, exécutez la procédure suivante :
- Déclarez une nouvelle occurrence de l’objet
byteArr
. - Ecrivez l’équivalant en octets de la valeur booléenne
false
et l’équivalent de la valeur mathématique de pi avec deux décimales. - Relisez la valeur booléenne et le nombre à virgule flottante à deux décimales.
Vous remarquerez qu’un segment de code est ajouté à la fin pour vérifier les erreurs de fin de fichier et s’assurer que la lecture du flux d’octets ne dépasse pas la fin.
package { import flash.display.Sprite; import flash.utils.ByteArray; import flash.errors.EOFError; public class DataInputExample extends Sprite { public function DataInputExample() { var byteArr:ByteArray = new ByteArray(); byteArr.writeBoolean(false); byteArr.writeDouble(Math.PI); byteArr.position = 0; try { trace(byteArr.readBoolean()); // false } catch(e:EOFError) { trace(e); // EOFError: Error #2030: End of file was encountered. } try { trace(byteArr.readDouble()); // 3.141592653589793 } catch(e:EOFError) { trace(e); // EOFError: Error #2030: End of file was encountered. } try { trace(byteArr.readDouble()); } catch(e:EOFError) { trace(e); // EOFError: Error #2030: End of file was encountered. } } } }
Tue Jun 12 2018, 09:30 AM Z