Pacchetto | flash.utils |
Interfaccia | public interface IDataInput |
Implementatori | ByteArray, FileStream, Socket, URLStream |
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. Se i dati disponibili sono insufficienti, viene generata un'eccezione EOFError
. Utilizzate la proprietà IDataInput.bytesAvailable
per determinare la quantità di dati disponibile per la lettura.
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
endian
Classe FileStream
Classe Socket
Classe URLStream
Classe ByteArray
Classe EOFError
Proprietà | Definito da | ||
---|---|---|---|
bytesAvailable : uint [sola lettura]
Restituisce il numero di byte dei dati disponibili per la lettura nel buffer di input. | IDataInput | ||
endian : String
L'ordine dei byte dei dati: costante BIG_ENDIAN o LITTLE_ENDIAN della classe Endian. | IDataInput | ||
objectEncoding : uint
Utilizzata per determinare se impiegare il formato AMF3 o AMF0 durante la scrittura o lettura di dati binari mediante il metodo readObject(). | IDataInput |
Metodo | Definito da | ||
---|---|---|---|
Legge un valore booleano dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un byte con segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge il numero di byte di dati, specificato dal parametro length, dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un numero a virgola mobile IEEE 754 a precisione doppia dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un numero a virgola mobile IEEE 754 a precisione singola dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un numero intero a 32 bit con segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge una stringa multibyte di lunghezza specificata dal flusso di file oppure dal flusso o array di byte mediante il set di caratteri specificato. | IDataInput | ||
readObject():*
Legge un oggetto dal flusso di file oppure dal flusso o array di byte, codificato nel formato serializzato AMF. | IDataInput | ||
Legge un numero intero a 16 bit con segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un byte senza segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un numero intero a 32 bit senza segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge un numero intero a 16 bit senza segno dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge una stringa UTF-8 dal flusso di file oppure dal flusso o array di byte. | IDataInput | ||
Legge una sequenza di byte UTF-8 dal flusso o dall'array di byte e restituisce una stringa. | IDataInput |
bytesAvailable | proprietà |
bytesAvailable:uint
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Restituisce il numero di byte dei dati disponibili per la lettura nel buffer di input. Il codice utente deve chiamare bytesAvailable
per verificare che i dati disponibili siano sufficienti prima di tentare di leggerli mediante uno dei metodi di lettura.
Implementazione
public function get bytesAvailable():uint
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 readObject()
. Questo valore è una costante della classe ObjectEncoding.
Implementazione
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
Elementi API correlati
readBoolean | () | metodo |
public function readBoolean():Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un valore booleano dal flusso di file oppure dal flusso o array di byte. Viene letto un byte singolo e, se è diverso da zero, viene restituito true
(false
, in caso contrario).
Boolean — Un valore booleano: true se il byte è diverso da zero, false in caso contrario.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readByte | () | metodo |
public function readByte():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un byte con segno dal flusso di file oppure dal flusso o array di byte.
Restituisceint — Il valore restituito è compreso nell'intervallo da -128 a 127.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readBytes | () | metodo |
public function readBytes(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 |
Legge il numero di byte di dati, specificato dal parametro length
, dal flusso di file oppure dal flusso o array di byte. I byte vengono letti nell'oggetto ByteArray specificato dal parametro bytes
, a partire dalla posizione specificata da offset
.
Parametri
bytes:ByteArray — L'oggetto ByteArray in cui vengono letti i dati.
| |
offset:uint (default = 0 ) — L'offset nel parametro bytes dal quale deve iniziare la lettura dati.
| |
length:uint (default = 0 ) — Il numero di byte da leggere. Il valore predefinito 0 avvia la lettura di tutti i dati disponibili.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readDouble | () | metodo |
public function readDouble():Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero a virgola mobile IEEE 754 a precisione doppia dal flusso di file oppure dal flusso o array di byte.
RestituisceNumber — Un numero a virgola mobile IEEE 754 a precisione doppia.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readFloat | () | metodo |
public function readFloat():Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero a virgola mobile IEEE 754 a precisione singola dal flusso di file oppure dal flusso o array di byte.
RestituisceNumber — Un numero a virgola mobile IEEE 754 a precisione singola.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readInt | () | metodo |
public function readInt():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 32 bit con segno dal flusso di file oppure dal flusso o array di byte.
Restituisceint — Il valore restituito è compreso nell'intervallo da -2147483648 a 2147483647.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readMultiByte | () | metodo |
public function readMultiByte(length:uint, charSet:String):String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge una stringa multibyte di lunghezza specificata dal flusso di file oppure dal flusso o array di byte mediante il set di caratteri specificato.
Parametri
length:uint — Il numero di byte dal flusso di byte da leggere.
| |
charSet:String — La stringa che indica il set di caratteri da utilizzare per interpretare i byte. 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.
Nota: se il valore del parametro |
String — Stringa con codifica UTF-8.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readObject | () | metodo |
public function readObject():*
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un oggetto dal flusso di file oppure dal flusso o array di byte, codificato nel formato serializzato AMF.
Restituisce* — L'oggetto deserializzato.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
Elementi API correlati
readShort | () | metodo |
public function readShort():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 16 bit con segno dal flusso di file oppure dal flusso o array di byte.
Restituisceint — Il valore restituito è compreso nell'intervallo da -32768 a 32767.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readUnsignedByte | () | metodo |
public function readUnsignedByte():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un byte senza segno dal flusso di file oppure dal flusso o array di byte.
Restituisceuint — Il valore restituito è compreso nell'intervallo da 0 a 255.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readUnsignedInt | () | metodo |
public function readUnsignedInt():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 32 bit senza segno dal flusso di file oppure dal flusso o array di byte.
Restituisceuint — Il valore restituito è compreso nell'intervallo da 0 a 4294967295.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readUnsignedShort | () | metodo |
public function readUnsignedShort():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 16 bit senza segno dal flusso di file oppure dal flusso o array di byte.
Restituisceuint — Il valore restituito è compreso nell'intervallo da 0 a 65535.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readUTF | () | metodo |
public function readUTF():String
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. Si presume che la stringa abbia come prefisso una dichiarazione unsigned short, che indica la lunghezza in byte.
Questo metodo è simile al metodo readUTF()
dell'interfaccia Java® IDataInput.
String — Una stringa UTF-8 prodotta dalla rappresentazione in byte di caratteri.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
readUTFBytes | () | metodo |
public function readUTFBytes(length:uint):String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge una sequenza di byte UTF-8 dal flusso o dall'array di byte e restituisce una stringa.
Parametri
length:uint — Il numero di byte da leggere.
|
String — Una stringa UTF-8 prodotta dalla rappresentazione in byte di caratteri della lunghezza specificata.
|
Genera
EOFError — I dati disponibili non sono sufficienti per la lettura.
|
DataInputExample
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 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, 02:44 PM Z