Pacchetto | flash.utils |
Interfaccia | public interface IDataOutput |
Implementatori | ByteArray, FileStream, Socket |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Tutte le operazioni IDataInput e IDataOutput sono "bigEndian" per impostazione predefinita (il byte più significativo della sequenza viene memorizzato nel primo/più basso indirizzo di archiviazione) e non bloccano il sistema.
L'estensione Sign ha importanza solo per la lettura dei dati, non per la scrittura. Per questo motivo, non è necessario separare i metodi di scrittura per utilizzare IDataInput.readUnsignedByte()
e IDataInput.readUnsignedShort()
. In altre parole:
- Utilizzate
IDataOutput.writeByte()
conIDataInput.readUnsignedByte()
eIDataInput.readByte()
. - Utilizzate
IDataOutput.writeShort()
conIDataInput.readUnsignedShort()
eIDataInput.readShort()
.
Elementi API correlati
Proprietà | Definito da | ||
---|---|---|---|
endian : String
L'ordine dei byte dei dati: costante BIG_ENDIAN o LITTLE_ENDIAN della classe Endian. | IDataOutput | ||
objectEncoding : uint
Utilizzata per determinare se impiegare il formato AMF3 o AMF0 durante la scrittura o lettura di dati binari mediante il metodo writeObject(). | IDataOutput |
Metodo | Definito da | ||
---|---|---|---|
Scrive un valore booleano. | IDataOutput | ||
Scrive un byte. | IDataOutput | ||
Scrive una sequenza di byte dall'array di byte specificato, bytes, iniziando dal byte specificato da offset (utilizzando un indice a base zero) con la lunghezza specificata da length, nel flusso di file oppure nel flusso o array di byte. | IDataOutput | ||
Scrive un numero a virgola mobile IEEE 754 a precisione doppia (64 bit). | IDataOutput | ||
Scrive un numero a virgola mobile IEEE 754 a precisione singola (32 bit). | IDataOutput | ||
Scrive un numero intero con segno a 32 bit. | IDataOutput | ||
Scrive una stringa multibyte nel flusso di file oppure nel flusso o array di byte mediante il set di caratteri specificato. | IDataOutput | ||
Scrive un oggetto nel flusso di file oppure nel flusso o array di byte nel formato serializzato AMF. | IDataOutput | ||
Scrive un numero intero a 16 bit. | IDataOutput | ||
Scrive un numero intero senza segno a 32 bit. | IDataOutput | ||
Legge una stringa UTF-8 dal flusso di file oppure dal flusso o array di byte. | IDataOutput | ||
Scrive una stringa UTF-8. | IDataOutput |
endian | proprietà |
endian:String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
L'ordine dei byte dei dati: costante BIG_ENDIAN
o LITTLE_ENDIAN
della classe Endian.
Implementazione
public function get endian():String
public function set endian(value:String):void
Elementi API correlati
objectEncoding | proprietà |
objectEncoding:uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Utilizzata per determinare se impiegare il formato AMF3 o AMF0 durante la scrittura o lettura di dati binari mediante il metodo writeObject()
. Questo valore è una costante della classe ObjectEncoding.
Implementazione
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
Elementi API correlati
writeBoolean | () | metodo |
public function writeBoolean(value:Boolean):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un valore booleano. Viene scritto un singolo byte a seconda del parametro value
: 1 se true
oppure 0 se false
.
Parametri
value:Boolean — Un valore booleano che determina il byte da scrivere. Se il parametro è true , viene scritto 1; se false , viene scritto 0.
|
writeByte | () | metodo |
writeBytes | () | metodo |
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una sequenza di byte dall'array di byte specificato, bytes
, iniziando dal byte specificato da offset
(utilizzando un indice a base zero) con la lunghezza specificata da length
, nel flusso di file oppure nel flusso o array di byte.
Se il parametro length
viene omesso, viene utilizzata la lunghezza predefinita 0 e viene scritto l'intero buffer partendo da offset
. Se viene omesso anche il parametro offset
, viene scritto l'intero buffer.
Se il parametro offset
o length
è fuori intervallo, viene fissato all'inizio e alla fine dell'array bytes
.
Parametri
bytes:ByteArray — L'array di byte da scrivere.
| |
offset:uint (default = 0 ) — Un numero intero a base zero, che specifica la posizione dell'array da cui viene avviata la scrittura.
| |
length:uint (default = 0 ) — Un numero intero senza segno, che specifica fin dove scrivere nel buffer.
|
writeDouble | () | metodo |
writeFloat | () | metodo |
writeInt | () | metodo |
writeMultiByte | () | metodo |
public function writeMultiByte(value:String, charSet:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una stringa multibyte nel flusso di file oppure nel flusso o array di byte mediante il set di caratteri specificato.
Parametri
value:String — Il valore stringa da scrivere.
| |
charSet:String — La stringa che indica il set di caratteri da utilizzare. Le stringhe dei set di caratteri possono essere "shift-jis" , "cn-gb" , "iso-8859-1" e altre. Per un elenco completo, vedete Set di caratteri supportati.
|
writeObject | () | metodo |
public function writeObject(object:*):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un oggetto nel flusso di file oppure nel flusso o array di byte nel formato serializzato AMF.
Parametri
object:* — L'oggetto da serializzare.
|
Elementi API correlati
writeShort | () | metodo |
public function writeShort(value:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero intero a 16 bit. Vengono utilizzati i 16 bit inferiori del parametro; i 16 bit superiori vengono ignorati.
Parametri
value:int — Un valore byte come un numero intero.
|
writeUnsignedInt | () | metodo |
writeUTF | () | metodo |
public function writeUTF(value:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge una stringa UTF-8 dal flusso di file oppure dal flusso o array di byte. La lunghezza della stringa UTF-8 in byte viene scritta per prima, come numero intero a 16 bit, seguita dai byte che rappresentano i caratteri della stringa.
Parametri
value:String — Il valore stringa da scrivere.
|
Genera
RangeError — La lunghezza supera 65535.
|
writeUTFBytes | () | metodo |
public function writeUTFBytes(value:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una stringa UTF-8. È simile a writeUTF()
, ma non inserisce come prefisso della stringa una parola di 16 bit.
Parametri
value:String — Il valore stringa da scrivere.
|
DataOutputExample
per scrivere un valore booleano e la rappresentazione di pi a virgola mobile e a precisione doppia in un array di byte. Questa operazione viene eseguita mediante la procedura seguente:
- Dichiarate una nuova istanza dell'oggetto ByteArray
byteArr
. - Scrivete l'equivalente in byte del valore booleano
false
e l'equivalente a virgola mobile e precisione doppia del valore matematico di pi. - Leggere il valore booleano e il numero a virgola mobile e precisione doppia.
Notate che alla fine viene aggiunto un segmento di codice per verificare la presenza di errori di fine del file e assicurare che il flusso di byte non venga letto oltre il suo punto finale.
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. } } } }
Tue Jun 12 2018, 02:44 PM Z