ActionScript® 3.0 Referenzhandbuch für die Adobe® Flash®-Plattform
Home  |  Liste der Pakete und Klassen ausblenden |  Pakete  |  Klassen  |  Neue Funktionen  |  Stichwortverzeichnis  |  Anhänge  |  Warum auf Englisch?
Filter: Daten werden vom Server abgerufen...
Daten werden vom Server abgerufen...
flash.utils 

IDataInput  - AS3

Paketflash.utils
Schnittstellepublic interface IDataInput
Umsetzer ByteArray, FileStream, Socket, URLStream

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Die IDataInput-Schnittstelle bietet eine Reihe von Methoden zum Lesen von Binärdaten. Diese Schnittstelle ist das I/O-Gegenstück zur IDataOutput-Schnittstelle, mit der Binärdaten geschrieben werden.

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() mit IDataInput.readUnsignedByte() und IDataInput.readByte().
  • Verwenden Sie IDataOutput.writeShort() mit IDataInput.readUnsignedShort() und IDataInput.readShort().

Beispiele anzeigen

Verwandte API-Elemente



Öffentliche Eigenschaften
 EigenschaftDefiniert 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
Öffentliche Methoden
 MethodeDefiniert von
  
Liest einen booleschen Wert vom Dateistream, Bytestream oder Byte-Array.
IDataInput
  
Liest ein vorzeichenbehaftetes Byte vom Dateistream, Bytestream oder Byte-Array.
IDataInput
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
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
  
readMultiByte(length:uint, charSet:String):String
Liest einen Multibyte-String der angegebenen Länge unter Verwendung des angegebenen Zeichensatzes vom Dateistream, Bytestream oder Byte-Array.
IDataInput
  
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
Eigenschaftendetails

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

Methodendetails

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.

Rückgabewerte
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ückgabewerte
int — 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ückgabewerte
Number — 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ückgabewerte
Number — 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ückgabewerte
int — 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 charSet-Parameters vom aktuellen System nicht erkannt, verwenden Adobe® Flash® Player oder Adobe® AIR® die Standard-Codepage des Systems als Zeichensatz. Beispielsweise kann ein Wert des Parameters charSet wie bei myTest.readMultiByte(22, "iso-8859-01"), wo 01 anstelle von 1 eingesetzt wird, auf Ihrem Entwicklungssystem funktionieren, aber auf keinem anderen System. Auf dem anderen System verwendet Flash Player oder die AIR-Laufzeitumgebung die Standard-Codepage des Systems.

Rückgabewerte
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ückgabewerte
int — 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ückgabewerte
uint — 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ückgabewerte
uint — 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ückgabewerte
uint — 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“.

Rückgabewerte
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.

Rückgabewerte
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.as

Im folgenden Beispiel werden mit der Klasse DataInputExample ein boolescher Ausdruck und die Gleitkommadarstellung (mit doppelter Genauigkeit) der Zahl Pi in ein Bytearray geschrieben. Dies wird in den folgenden Schritten erreicht:
  1. Deklarieren Sie eine neue ByteArray-Objektinstanz mit dem Namen byteArr.
  2. Schreiben Sie den Byte-Äquivalenzwert des booleschen Werts false und die Gleitkommadarstellung (mit doppelter Genauigkeit) der Zahl Pi.
  3. 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.
            }
        }
    }
}




[ X ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

Nicht alle Teile des ActionScript 3.0-Referenzhandbuchs wurden in alle Sprachen übersetzt. Wenn der Text zu einem Sprachelement nicht übersetzt wurde, wird er auf Englisch angezeigt. Zum Beispiel wurden die Informationen zur ga.controls.HelpBox-Klasse nicht in andere Sprachen übersetzt. In der deutschen Version des Referenzhandbuchs erscheint der Abschnitt zur ga.controls.HelpBox-Klasse deshalb auf Englisch.