Paket | flash.utils |
Schnittstelle | public interface IDataInput |
Umsetzer | ByteArray, FileStream, Socket, URLStream |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Alle IDataInput- und IDataOutput-Vorgänge erfolgen in der Standardeinstellung im Format „bigEndian“ (das höchstwertige Byte der Folge wird an der niedrigsten bzw. ersten Speicheradresse gespeichert) und ungeblockt. Wenn nicht genug Daten vorhanden sind, wird eine EOFError
-Ausnahme ausgelöst. Verwenden Sie die IDataInput.bytesAvailable
-Eigenschaft um zu ermitteln, wie viele Daten zum Lesen bereitstehen.
Vorzeichenerweiterung ist nur beim Lesen von Daten relevant, jedoch nicht beim Schreiben. Sie benötigen deshalb keine unterschiedlichen Schreibmethoden für die Datentypen IDataInput.readUnsignedByte()
und IDataInput.readUnsignedShort()
. Dies bedeutet:
- Verwenden Sie
IDataOutput.writeByte()
mitIDataInput.readUnsignedByte()
undIDataInput.readByte()
. - Verwenden Sie
IDataOutput.writeShort()
mitIDataInput.readUnsignedShort()
undIDataInput.readShort()
.
Verwandte API-Elemente
endian
FileStream-Klasse
Socket-Klasse
URLStream-Klasse
ByteArray-Klasse
EOFError-Klasse
Eigenschaft | Definiert von | ||
---|---|---|---|
bytesAvailable : uint [schreibgeschützt]
Gibt für die zum Lesen verfügbaren Daten im Eingabepuffer die Anzahl der Byte an. | IDataInput | ||
endian : String
Die Bytereihenfolge der Daten. Entweder die Konstante BIG_ENDIAN oder LITTLE_ENDIAN der Endian-Klasse. | IDataInput | ||
objectEncoding : uint
Wird verwendet, um festzustellen, ob das Format AMF3 oder AMF0 verwendet wird, wenn binäre Daten mit der readObject()-Methode geschrieben oder gelesen werden. | IDataInput |
Methode | Definiert von | ||
---|---|---|---|
Liest einen booleschen Wert vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest ein vorzeichenbehaftetes Byte vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest die Anzahl der vom length-Parameter angegebenen Datenbyte aus dem Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine IEEE 754-Gleitkommazahl mit doppelter Genauigkeit vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine IEEE 754-Gleitkommazahl mit einfacher Genauigkeit vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine vorzeichenbehaftete 32-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest einen Multibyte-String der angegebenen Länge unter Verwendung des angegebenen Zeichensatzes vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
readObject():*
Liest ein Objekt vom Dateistream, Bytestream oder Byte-Array, das im serialisierten AMF-Format kodiert ist. | IDataInput | ||
Liest eine vorzeichenbehaftete 16-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest ein vorzeichenloses Byte vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine vorzeichenlose 32-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine vorzeichenlose 16-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest einen UTF-8-String vom Dateistream, Bytestream oder Byte-Array. | IDataInput | ||
Liest eine Folge von UTF-8-Byte der Anzahl vom Byte-Datenstrom oder Byte-Array und gibt einen String zurück. | IDataInput |
bytesAvailable | Eigenschaft |
bytesAvailable:uint
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Gibt für die zum Lesen verfügbaren Daten im Eingabepuffer die Anzahl der Byte an. Aus dem Programmcode der Benutzer muss bytesAvailable
aufgerufen werden, um sicherzustellen, dass genügend Daten verfügbar sind, bevor diese mit einer der Lesemethoden gelesen werden.
Implementierung
public function get bytesAvailable():uint
endian | Eigenschaft |
endian:String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Die Bytereihenfolge der Daten. Entweder die Konstante BIG_ENDIAN
oder LITTLE_ENDIAN
der Endian-Klasse.
Implementierung
public function get endian():String
public function set endian(value:String):void
Verwandte API-Elemente
objectEncoding | Eigenschaft |
objectEncoding:uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Wird verwendet, um festzustellen, ob das Format AMF3 oder AMF0 verwendet wird, wenn binäre Daten mit der readObject()
-Methode geschrieben oder gelesen werden. Der Wert ist eine Konstante der ObjectEncoding-Klasse.
Implementierung
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
Verwandte API-Elemente
readBoolean | () | Methode |
public function readBoolean():Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest einen booleschen Wert vom Dateistream, Bytestream oder Bytearray. Es wird ein einzelnes Byte gelesen und true
zurückgegeben, wenn das Byte ungleich 0 ist; andernfalls wird false
zurückgegeben.
Boolean — Ein boolescher Wert. Der Wert ist true , wenn das Byte ungleich 0 ist, oder andernfalls false .
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readByte | () | Methode |
public function readByte():int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest ein vorzeichenbehaftetes Byte vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteint — Der Rückgabewert liegt im Bereich von -128 bis 127.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readBytes | () | Methode |
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest die Anzahl der vom length
-Parameter angegebenen Datenbyte aus dem Dateistream, Bytestream oder Bytearray. Die Bytedaten werden ab der im Parameter bytes
festgelegten Position in das im Parameter offset
angegebenen ByteArray-Objekt gelesen.
Parameter
bytes:ByteArray — Das ByteArray -Objekt, in das die Daten eingelesen werden.
| |
offset:uint (default = 0 ) — Der Offset innerhalb des mit dem Parameter bytes angegebenen Bereichs, ab dem das Lesen der Daten beginnt.
| |
length:uint (default = 0 ) — Die Anzahl der zu lesenden Byte. Der Standardwert 0 bewirkt, dass alle verfügbaren Daten gelesen werden.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readDouble | () | Methode |
public function readDouble():Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine IEEE 754-Gleitkommazahl mit doppelter Genauigkeit vom Dateistream, Bytestream oder Byte-Array.
RückgabewerteNumber — Eine Gleitkommazahl nach IEEE 754 mit doppelter Genauigkeit.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readFloat | () | Methode |
public function readFloat():Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine IEEE 754-Gleitkommazahl mit einfacher Genauigkeit vom Dateistream, Bytestream oder Byte-Array.
RückgabewerteNumber — Eine Gleitkommazahl nach IEEE 754 mit einfacher Genauigkeit.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readInt | () | Methode |
public function readInt():int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine vorzeichenbehaftete 32-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteint — Der Rückgabewert liegt im Bereich von -2147483648 bis 2147483647.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readMultiByte | () | Methode |
public function readMultiByte(length:uint, charSet:String):String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest einen Multibyte-String der angegebenen Länge unter Verwendung des angegebenen Zeichensatzes vom Dateistream, Bytestream oder Byte-Array.
Parameter
length:uint — Die Anzahl der aus dem Bytestream zu lesenden Byte.
| |
charSet:String — Der String, der den zum Interpretieren der Byte zu verwendenden Zeichensatz angibt. Mögliche Zeichensatz-Strings sind unter anderem "shift-jis" , "cn-gb" und "iso-8859-1" . Eine vollständige Liste finden Sie unter Unterstützte Zeichensätze.
Hinweis: Wird der Wert des |
String — Ein UTF-8-kodierter String.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readObject | () | Methode |
public function readObject():*
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest ein Objekt vom Dateistream, Bytestream oder Byte-Array, das im serialisierten AMF-Format kodiert ist.
Rückgabewerte* — Das deserialisierte Objekt.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
Verwandte API-Elemente
readShort | () | Methode |
public function readShort():int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine vorzeichenbehaftete 16-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteint — Der Rückgabewert liegt im Bereich von -32768 bis 32767.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readUnsignedByte | () | Methode |
public function readUnsignedByte():uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest ein vorzeichenloses Byte vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteuint — Der Rückgabewert liegt im Bereich von 0 bis 255.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readUnsignedInt | () | Methode |
public function readUnsignedInt():uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine vorzeichenlose 32-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteuint — Der Rückgabewert liegt im Bereich von 0 bis 4294967295.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readUnsignedShort | () | Methode |
public function readUnsignedShort():uint
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine vorzeichenlose 16-Bit-Ganzzahl vom Dateistream, Bytestream oder Byte-Array.
Rückgabewerteuint — Der Rückgabewert liegt im Bereich von 0 bis 65535.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readUTF | () | Methode |
public function readUTF():String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest einen UTF-8-String vom Dateistream, Bytestream oder Bytearray. Es wird davon ausgegangen, dass dem String eine short-Ganzzahl ohne Vorzeichen mit der Länge in Byte vorangestellt ist.
Diese Methode entspricht der readUTF()
-Methode der Java®-Schnittstelle „IDataInput“.
String — Ein durch die Bytedarstellung von Zeichen erstellter UTF-8-String.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
readUTFBytes | () | Methode |
public function readUTFBytes(length:uint):String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liest eine Folge von UTF-8-Byte der Anzahl vom Byte-Datenstrom oder Byte-Array und gibt einen String zurück.
Parameter
length:uint — Die Anzahl der zu lesenden Byte.
|
String — Ein durch die Bytedarstellung von Zeichen erstellter UTF-8-String der angegebenen Länge.
|
Auslöser
EOFError — Es sind nicht genug zu lesende Daten vorhanden.
|
DataInputExample
ein boolescher Ausdruck und die Gleitkommadarstellung (mit doppelter Genauigkeit) der Zahl Pi in ein Bytearray geschrieben. Dies wird in den folgenden Schritten erreicht:
- Deklarieren Sie eine neue ByteArray-Objektinstanz mit dem Namen
byteArr
. - Schreiben Sie den Byte-Äquivalenzwert des booleschen Werts
false
und die Gleitkommadarstellung (mit doppelter Genauigkeit) der Zahl Pi. - Rufen Sie den booleschen Wert und den Gleitkommawert ab.
Am Ende wird ein Codesegment eingefügt, mit dem auf Dateiende-Fehler geprüft wird. Hiermit wird sichergestellt, dass nicht über das Ende des Bytestroms hinaus gelesen wird.
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, 10:04 AM Z