Naslaggids voor Adobe ActionScript® 3.0 voor het Adobe® Flash®-platform
Startpagina  |  Lijst met pakketten en klassen verbergen |  Pakketten  |  Klassen  |  Nieuw  |  Index  |  Bijlagen  |  Waarom in het Engels?
Filters: Gegevens ophalen van server...
Gegevens ophalen van server...
flash.utils 

IDataInput  - AS3

Pakketflash.utils
Interfacepublic interface IDataInput
Geïmplementeerd door ByteArray, FileStream, Socket, URLStream

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De interface IDataInput biedt een set methoden voor het lezen van binaire gegevens. Deze interface is de I/O-tegenhanger van de interface IDataOutput, die binaire gegevens schrijft.

Alle IDataInput- en IDataOutput-bewerkingen zijn standaard 'bigEndian' (de meest significante byte in de reeks is opgeslagen op het laagste of eerste opslagadres) en zijn niet-blokkerend. Wanneer onvoldoende gegevens beschikbaar zijn, wordt een uitzondering EOFError gegenereerd. Gebruik de eigenschap IDataInput.bytesAvailable om te bepalen hoeveel gegevens beschikbaar zijn om te lezen.

Tekenuitbreiding is alleen van belang als u gegevens leest, niet als u schrijft. Daarom hebt u geen aparte schrijfmethoden nodig om met IDataInput.readUnsignedByte() en IDataInput.readUnsignedShort() te werken. Met andere woorden:

  • Gebruik IDataOutput.writeByte() met IDataInput.readUnsignedByte() en IDataInput.readByte().
  • Gebruik IDataOutput.writeShort() met IDataInput.readUnsignedShort() en IDataInput.readShort().

Bekijk de voorbeelden

Verwante API-elementen



Openbare eigenschappen
 EigenschapGedefinieerd door
  bytesAvailable : uint
[alleen-lezen] Hiermee wordt het aantal beschikbare gegevensbytes voor het lezen in de invoerbuffer geretourneerd.
IDataInput
  endian : String
De bytevolgorde voor de gegevens, de constante BIG_ENDIAN of LITTLE_ENDIAN uit de klasse Endian.
IDataInput
  objectEncoding : uint
Wordt gebruikt om vast te stellen of de indeling AMF3 of AMF0 wordt gebruikt bij het lezen of schrijven van binaire gegevens met de methode readObject().
IDataInput
Openbare methoden
 MethodeGedefinieerd door
  
Leest een Booleaanse waarde uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een byte met teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Leest het aantal gegevensbytes dat met de parameter length is opgegeven, uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een IEEE 754 drijvende-kommagetal met dubbele precisie uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een IEEE 754 drijvende-kommagetal met enkele precisie uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een 32-bits geheel getal met teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
readMultiByte(length:uint, charSet:String):String
Leest een multibyte-tekenreeks van de opgegeven lengte met de opgegeven tekenset uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een object dat in AMF-indeling met serienummering is gecodeerd, uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een 16-bits geheel getal met teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een byte zonder teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een 32-bits geheel zonder teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een 16-bits geheel zonder teken uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een UTF-8-tekenreeks uit de bestandsstream, bytestream of bytearray.
IDataInput
  
Leest een reeks van UTF-8-bytes uit de bytestream of bytearray en retourneert een tekenreeks.
IDataInput
Eigenschapdetails

bytesAvailable

eigenschap
bytesAvailable:uint  [alleen-lezen]

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Hiermee wordt het aantal beschikbare gegevensbytes voor het lezen in de invoerbuffer geretourneerd. Gebruikerscode moet bytesAvailable aanroepen om er zeker van te zijn dat voldoende gegevens beschikbaar zijn voordat wordt geprobeerd deze te lezen met een van de methoden read.



Implementatie
    public function get bytesAvailable():uint

endian

eigenschap 
endian:String

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De bytevolgorde voor de gegevens, de constante BIG_ENDIAN of LITTLE_ENDIAN uit de klasse Endian.



Implementatie
    public function get endian():String
    public function set endian(value:String):void

Verwante API-elementen

objectEncoding

eigenschap 
objectEncoding:uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Wordt gebruikt om vast te stellen of de indeling AMF3 of AMF0 wordt gebruikt bij het lezen of schrijven van binaire gegevens met de methode readObject(). De waarde is een constante van de klasse ObjectEncoding.



Implementatie
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

Verwante API-elementen

Methodedetails

readBoolean

()methode
public function readBoolean():Boolean

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een booleaanse waarde uit de bestandsstream, bytestream of bytearray. Er wordt één byte gelezen en true wordt geretourneerd wanneer de byte niet gelijk is aan 0. Anders wordt false geretourneerd.

Geretourneerde waarde
Boolean — Een Booleaanse waarde die true is wanneer de byte niet-nul is, anders false.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readByte

()methode 
public function readByte():int

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een byte met teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
int — De geretourneerde waarde ligt in het bereik -128 t/m 127.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readBytes

()methode 
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest het aantal gegevensbytes dat met de parameter length is opgegeven, uit de bestandsstream, bytestream of bytearray. De bytes worden ingelezen in het object ByteArray, dat is opgegeven door de parameter bytes, te beginnen bij de positie die is opgegeven door offset.

Parameters

bytes:ByteArray — Het object ByteArray waarin gegevens worden ingelezen.
 
offset:uint (default = 0) — De verschuiving naar de parameter bytes waar begonnen moet worden met het lezen van gegevens.
 
length:uint (default = 0) — Het aantal bytes dat moet worden gelezen. De standaardwaarde 0 zorgt ervoor dat alle beschikbare gegevens worden gelezen.


Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readDouble

()methode 
public function readDouble():Number

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een IEEE 754 drijvende-kommagetal met dubbele precisie uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
Number — Een IEEE 754 drijvende-kommagetal met dubbele precisie.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readFloat

()methode 
public function readFloat():Number

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een IEEE 754 drijvende-kommagetal met enkele precisie uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
Number — Een IEEE 754 drijvende-kommagetal met enkele precisie.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readInt

()methode 
public function readInt():int

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een 32-bits geheel getal met teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
int — De geretourneerde waarde ligt in het bereik -2147483648 t/m 2147483647.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readMultiByte

()methode 
public function readMultiByte(length:uint, charSet:String):String

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een multibyte-tekenreeks van de opgegeven lengte met de opgegeven tekenset uit de bestandsstream, bytestream of bytearray.

Parameters

length:uint — Het aantal bytes van de bytestream dat moet worden gelezen.
 
charSet:String — De tekenreeks die de tekenset aangeeft die moet worden gebruikt om de bytes te interpreteren. Mogelijke tekensetreeksen zijn onder andere shift-jis, cn-gb, iso-8859-1 en andere. Zie Ondersteunde tekensets voor een complete lijst.

Opmerking: wanneer de waarde voor de parameter charSet niet wordt herkend door het huidige systeem, gebruikt Adobe® Flash® Player of Adobe® AIR de standaardcodepagina van uw systeem als tekenset. De waarde voor de parameter charSet, zoals myTest.readMultiByte(22, 'iso-8859-01') die gebruikmaakt van 01 in plaats van 1, kan mogelijk werken op het systeem dat u voor het ontwikkelen gebruikt, maar niet op een ander systeem. Op het andere systeem wordt de standaardcodepagina van het systeem gebruikt door Flash Player of de AIR-runtime.

Geretourneerde waarde
String — Een UTF-8-gecodeerde tekenreeks.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readObject

()methode 
public function readObject():*

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een object dat in AMF-indeling met serienummering is gecodeerd, uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
* — Het gedeserialiseerde object.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

Verwante API-elementen

readShort

()methode 
public function readShort():int

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een 16-bits geheel getal met teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
int — De geretourneerde waarde ligt in het bereik -32768 t/m 32767.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readUnsignedByte

()methode 
public function readUnsignedByte():uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een byte zonder teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
uint — De geretourneerde waarde ligt in het bereik 0 t/m 255.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readUnsignedInt

()methode 
public function readUnsignedInt():uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een 32-bits geheel zonder teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
uint — De geretourneerde waarde ligt in het bereik 0 t/m 4294967295.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readUnsignedShort

()methode 
public function readUnsignedShort():uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een 16-bits geheel zonder teken uit de bestandsstream, bytestream of bytearray.

Geretourneerde waarde
uint — De geretourneerde waarde ligt in het bereik 0 t/m 65535.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readUTF

()methode 
public function readUTF():String

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een UTF-8-tekenreeks uit de bestandsstream, bytestream of bytearray. Er wordt aangenomen dat de tekenreeks begint met een kort geheel getal zonder teken dat de lengte in bytes aangeeft.

Deze methode is vergelijkbaar met de methode readUTF() in de Java®-interface IDataInput.

Geretourneerde waarde
String — Een UTF-8-tekenreeks die is geproduceerd door de byterepresentatie van tekens.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.

readUTFBytes

()methode 
public function readUTFBytes(length:uint):String

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Leest een reeks van UTF-8-bytes uit de bytestream of bytearray en retourneert een tekenreeks.

Parameters

length:uint — Het aantal bytes dat moet worden gelezen.

Geretourneerde waarde
String — Een UTF-8-tekenreeks die is geproduceerd door de byterepresentatie van tekens met de opgegeven lengte.

Gegenereerde uitzondering
EOFError — Er zijn onvoldoende gegevens beschikbaar om te lezen.
DataInputExample.as

In het volgende voorbeeld wordt de klasse DataInputExample gebruikt om een booleaanse waarde en een representatie van pi als drijvende-kommagetal met dubbele precisie naar een bytearray te schrijven. Hierbij moeten de volgende stappen worden uitgevoerd:
  1. Declareer een nieuwe ByteArray-objectinstantie byteArr.
  2. Schrijf de waarde van de booleaanse waarde false in bytes en de wiskundige waarde van pi in een drijvende-kommagetal met dubbele precisie.
  3. Lees de booleaanse waarde en het drijvende-kommagetal met dubbele precisie nogmaals.

Aan het eind is een codesegment toegevoegd om op bestandseindefouten te controleren en te zorgen dat de bytestream niet voorbij het einde wordt gelezen.

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 ]Waarom in het Engels?
Sommige inhoud van de Naslaggids voor ActionScript 3.0 staat in het Engels

Niet alle onderdelen van de Naslaggids voor ActionScript 3.0 zijn in alle talen vertaald. Wanneer een taalelement niet is vertaald, wordt het in het Engels weergegeven. Zo is de klasse ga.controls.HelpBox niet in elke taal vertaald. In de Nederlandse versie van de naslaggids wordt de klasse ga.controls.HelpBox bijvoorbeeld in het Engels weergegeven.