| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
L'interface IDataOutput propose plusieurs méthodes d'écriture des données binaires. Cette interface est l’équivalent E/S de l’interface IDataOutput, qui lit des données binaires. L’interface IDataOutput est implémentée par les classes FileStream, Socket et ByteArray.
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.
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() avec IDataInput.readUnsignedByte() et IDataInput.readByte().
-
Utilisez
IDataOutput.writeShort() avec IDataInput.readUnsignedShort() et IDataInput.readShort().
Consulter les exemples
endian:String [lecture-écriture]
| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
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):voidVoir aussi
objectEncoding:uint [lecture-écriture]
| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
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 writeObject(). La valeur est une constante extraite de la classe ObjectEncoding.
Implémentation public function get objectEncoding():uint public function set objectEncoding(value:uint):voidVoir aussi
public function writeBoolean(value:Boolean):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit une valeur booléenne. Un seul octet est écrit, conformément au paramètre value, soit 1 si true ou 0 si false.
Paramètres
| value:Boolean —
Valeur booléenne qui détermine l'octet à écrire. Si le paramètre a pour valeur true, 1 est écrit ; s'il a pour valeur false, 0 est écrit.
|
public function writeByte(value:int):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un octet. Les 8 bits inférieurs du paramètre sont utilisés. Les 24 bits supérieurs ne sont pas pris en compte.
Paramètres
| value:int — Valeur d'octet exprimée comme un entier. |
public function writeBytes(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 |
Ecrit une séquence d'octets à partir du tableau d'octets ou des octets spécifiés, en partant de l'octet spécifié par l'offset (à l'aide d'un index en base zéro) dont la longueur est indiquée par le paramètre length dans le flux de fichiers ou d'octets, ou le tableau d'octets.
Si le paramètre length est omis, la longueur par défaut est utilisée (à savoir 0) et tout le contenu de la mémoire tampon à partir de offset est écrit. Si le paramètre offset est également omis, toute la mémoire tampon est écrite.
Si les paramètres offset ou length ne sont pas compris dans la plage supportée, ils sont réglés sur le début et la fin du tableau d'octets (bytes).
Paramètres
| bytes:ByteArray — Tableau d'octets à écrire. |
| |
| offset:uint (default = 0) — Index en base zéro qui indique où débuter l'écriture dans le tableau. |
| |
| length:uint (default = 0) — Entier non signé qui indique l’emplacement du début d'écriture dans la mémoire tampon. |
public function writeDouble(value:Number):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un nombre à virgule flottante à deux décimales (64 bits) et conforme à IEEE 754.
Paramètres
| value:Number — Nombre à virgule flottante à deux décimales (64 bits). |
public function writeFloat(value:Number):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un nombre à virgule flottante à une décimale (32 bits) et conforme à IEEE 754.
Paramètres
| value:Number — Nombre à virgule flottante à une décimale (32 bits). |
public function writeInt(value:int):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un entier signé de 32 bits.
Paramètres
| value:int — Valeur d'octet exprimée comme un entier signé. |
public function writeMultiByte(value:String, charSet:String):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit une chaîne multi-octets 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
| value:String — Valeur de la chaîne à écrire. |
| |
| charSet:String —
Chaîne indiquant le jeu de caractères à utiliser. 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, consultez la section Jeux de caractères pris en charge.
|
public function writeObject(object:*):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un objet codé au format AMF sérialisé dans le flux de fichiers, le flux d'octets ou le tableau d’octets.
Paramètres
| object:* — Objet à sérialiser. |
Voir aussi
public function writeShort(value:int):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un entier de 16 bits. Les 16 bits inférieurs du paramètre sont utilisés. Les 16 bits supérieurs ne sont pas pris en compte.
Paramètres
| value:int — Valeur d'octet exprimée comme un entier. |
public function writeUnsignedInt(value:uint):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit un entier non signé de 32 bits.
Paramètres
| value:uint — Valeur d'octet exprimée comme un entier non signé. |
public function writeUTF(value:String):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit une chaîne UTF-8 dans le flux de fichiers, le flux d'octets ou le tableau d'octets. La longueur de la chaîne UTF-8 exprimée en octets est d'abord écrite sous forme d’entier de 16 bits, suivi des octets représentant les caractères de la chaîne.
Paramètres
| value:String — Valeur de la chaîne à écrire. |
Valeur émise | RangeError — Si la longueur est supérieure à 65535. |
public function writeUTFBytes(value:String):void| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Ecrit une chaîne UTF-8. Comme writeUTF(), mais n'insère pas dans la chaîne un préfixe correspondant à un mot de 16 bits.
Paramètres
| value:String — Valeur de la chaîne à écrire. |
L'exemple suivant utilise la classe
DataOutputExample pour écrire une valeur booléenne et la représentation à virgule flottante à deux décimales de pi dans un tableau d'octets. Cette opération se déroule selon 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 DataOutputExample extends Sprite {
public function DataOutputExample() {
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.
}
}
}
}
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Thu Jan 8 2009, 03:00 AM -08:00