| 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):voidElementi 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):voidElementi 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
falsee 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