| Pakket | flash.utils |
| Interface | public interface IDataOutput |
| Geïmplementeerd door | ByteArray, FileStream, Socket |
| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
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.
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()metIDataInput.readUnsignedByte()enIDataInput.readByte(). - Gebruik
IDataOutput.writeShort()metIDataInput.readUnsignedShort()enIDataInput.readShort().
Verwante API-elementen
| Eigenschap | Gedefinieerd door | ||
|---|---|---|---|
| endian : String
De bytevolgorde voor de gegevens, de constante BIG_ENDIAN of LITTLE_ENDIAN uit de klasse Endian. | IDataOutput | ||
| 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 writeObject(). | IDataOutput | ||
| Methode | Gedefinieerd door | ||
|---|---|---|---|
Schrijft een booleaanse waarde. | IDataOutput | ||
Schrijft een byte. | IDataOutput | ||
Schrijft een reeks van bytes vanuit de opgegeven bytearray bytes, te beginnen op de byte die is opgegeven met offset (met een op nul gebaseerde indexwaarde) met een lengte die is opgegeven met length, naar de bestandsstream, bytestream of bytearray. | IDataOutput | ||
Schrijft een IEEE 754 drijvende-kommagetal (64-bits) met dubbele precisie. | IDataOutput | ||
Schrijft een IEEE 754 drijvende-kommagetal (32-bits) met enkele precisie. | IDataOutput | ||
Schrijft een 32-bits geheel getal met teken. | IDataOutput | ||
Schrijft een multibyte-tekenreeks naar de bestandsstream, bytestream of byte-array met de opgegeven tekenset. | IDataOutput | ||
Schrijft een object dat in AMF-indeling met serienummering is gecodeerd, naar de bestandsstream, bytestream of bytearray. | IDataOutput | ||
Schrijft een 16-bits geheel getal. | IDataOutput | ||
Schrijft een 32-bits geheel getal zonder teken. | IDataOutput | ||
Schrijft een UTF-8-tekenreeks naar de bestandsstream, bytestream of byte-array. | IDataOutput | ||
Schrijft een UTF-8-tekenreeks. | IDataOutput | ||
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):voidVerwante 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 writeObject(). De waarde is een constante van de klasse ObjectEncoding.
Implementatie
public function get objectEncoding():uint public function set objectEncoding(value:uint):voidVerwante API-elementen
writeBoolean | () | methode |
public function writeBoolean(value:Boolean):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een booleaanse waarde. Er wordt volgens de parameter value één byte geschreven, 1 indien true of 0 indien false.
Parameters
value:Boolean — Een booleaanse waarde die bepaalt welke byte wordt geschreven. Als de parameter true is, wordt 1 geschreven; als de parameter false, wordt 0 geschreven.
|
writeByte | () | methode |
writeBytes | () | methode |
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een reeks van bytes vanuit de opgegeven bytearray bytes, te beginnen op de byte die is opgegeven met offset (met een op nul gebaseerde indexwaarde) met een lengte die is opgegeven met length, naar de bestandsstream, bytestream of bytearray.
Wanneer de parameter length wordt weggelaten, wordt de standaardlengte 0 gebruikt en wordt de gehele buffer geschreven, beginnend bij offset. Wanneer de parameter offset ook wordt weggelaten, wordt de gehele buffer geschreven.
Wanneer de parameter offset of length zich buiten het bereik bevindt, worden ze vastgeklemd aan het begin en het einde van de array bytes.
Parameters
bytes:ByteArray — De bytearray die moet worden geschreven.
| |
offset:uint (default = 0) — Een op nul gebaseerde index die de positie in de array opgeeft waar met schrijven moet worden begonnen.
| |
length:uint (default = 0) — Een geheel getal zonder teken dat aangeeft tot hoever in de buffer moet worden geschreven.
|
writeDouble | () | methode |
writeFloat | () | methode |
writeInt | () | methode |
writeMultiByte | () | methode |
public function writeMultiByte(value:String, charSet:String):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een multibyte-tekenreeks naar de bestandsstream, bytestream of byte-array met de opgegeven tekenset.
Parameters
value:String — De tekenreekswaarde die moet worden geschreven.
| |
charSet:String — De tekenreeks die de tekenset aangeeft die moet worden gebruikt. Mogelijke tekensetreeksen zijn onder andere shift-jis, cn-gb, iso-8859-1 en andere. Zie Ondersteunde tekensets voor een complete lijst.
|
writeObject | () | methode |
public function writeObject(object:*):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een object dat in AMF-indeling met serienummering is gecodeerd, naar de bestandsstream, bytestream of bytearray.
Parameters
object:* — Het object waarop serienummering moet worden toegepast.
|
Verwante API-elementen
writeShort | () | methode |
public function writeShort(value:int):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een 16-bits geheel getal. De lage 16 bits van de parameter worden gebruikt, de hoge 16 bits worden genegeerd.
Parameters
value:int — De waarde van een byte als geheel getal.
|
writeUnsignedInt | () | methode |
writeUTF | () | methode |
public function writeUTF(value:String):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een UTF-8-tekenreeks naar de bestandsstream, bytestream of byte-array. De lengte van de UTF-8-tekenreeks in bytes wordt eerst als een 16-bits geheel getal geschreven en wordt gevolgd door de bytes die de tekens van de tekenreeks vertegenwoordigen.
Parameters
value:String — De tekenreekswaarde die moet worden geschreven.
|
Gegenereerde uitzondering
RangeError — Wanneer de lengte groter is dan 65535.
|
writeUTFBytes | () | methode |
public function writeUTFBytes(value:String):void| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Schrijft een UTF-8-tekenreeks. Vergelijkbaar met writeUTF(), maar voegt geen 16-bits woord als voorvoegsel toe aan de tekenreeks.
Parameters
value:String — De tekenreekswaarde die moet worden geschreven.
|
DataOutputExample gebruikt om een booleaanse waarde en een drijvende-kommagetal met dubbele precisie-representatie van pi naar een bytearray te schrijven. Hierbij moeten de volgende stappen worden uitgevoerd:
- Declareer een nieuwe ByteArray-objectinstantie
byteArr. - Schrijf de waarde van de booleaanse waarde
falsein bytes en de wiskundige waarde van pi in een drijvende-kommagetal met dubbele precisie. - 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 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.
}
}
}
}
Wed Jun 13 2018, 11:42 AM Z