| Player 버전 : | Flash Player 9 |
IDataOutput 인터페이스는 이진 데이터를 쓰는 메서드 집합을 제공합니다. 이는 이진 데이터를 읽는 IDataInput에 대응되는 I/O 인터페이스입니다. IDataOutput 인터페이스는 Socket 및 ByteArray 클래스를 통해 구현됩니다.
기본적으로 모든 IDataInput 및 IDataOutput 작업은 시퀀스의 최상위 바이트가 저장소에서 가장 낮은 첫 번째 주소에 저장되는 "bigEndian"이며 비블로킹 방식입니다.
부호 확장은 데이터를 쓸 때가 아닌 데이터를 읽을 때만 의미가 있습니다. 따라서 IDataInput.readUnsignedByte() 및 IDataInput.readUnsignedShort()와 함께 사용할 별도의 쓰기 메서드는 필요하지 않습니다. 다시 말하자면 다음과 같습니다.
IDataOutput.writeByte()를 IDataInput.readUnsignedByte() 및 IDataInput.readByte()와 함께 사용합니다.
IDataOutput.writeShort()를 IDataInput.readUnsignedShort() 및 IDataInput.readShort()와 함께 사용합니다.
예제를 통해 확인하십시오.
endian:String [read-write]
| Player 버전 : | Flash Player 9 |
데이터의 바이트 순서이며 Endian 클래스의 "bigEndian" 또는 "littleEndian" 상수입니다.
구현
public function get endian():String
public function set endian(value:String):void
참고 사항
objectEncoding:uint [read-write]
| Player 버전 : | Flash Player 9 |
이진 데이터를 쓰거나 읽을 때 ActionScript 3.0, ActionScript 2.0 또는 ActionScript 1.0 형식을 사용할지 여부를 확인하는 데 사용합니다. 값은 ObjectEncoding 클래스의 상수입니다.
구현
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
참고 사항
public function writeBoolean(value:Boolean):void
| Player 버전 : | Flash Player 9 |
부울 값을 씁니다. value 매개 변수에 따라 단일 바이트를 씁니다. 값이 true이면 1, false이면 0을 씁니다.
매개 변수
| value:Boolean — 쓸 바이트를 결정하는 부울 값입니다. 이 매개 변수가 true이면 1을 쓰고, false이면 0을 씁니다.
|
public function writeByte(value:int):void
| Player 버전 : | Flash Player 9 |
바이트를 씁니다. 매개 변수의 하위 8비트가 사용되며 상위 24비트는 무시됩니다.
매개 변수
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
| Player 버전 : | Flash Player 9 |
지정된 바이트 배열인 bytes에서 offset(0부터 시작하는 인덱스)에서 시작하여 length만큼의 바이트 시퀀스를 데이터 스트림에 씁니다.
length 매개 변수를 생략하면 기본 길이인 0이 사용되어 offset에서 시작하여 전체 버퍼를 씁니다. offset 매개 변수도 생략하면 전체 버퍼를 씁니다.
offset 또는 length 매개 변수가 범위를 벗어나면 bytes 배열의 시작과 끝이 대신 적용됩니다.
매개 변수
| bytes:ByteArray — 기록할 바이트 배열입니다.
|
| |
| offset:uint (default = 0) — 배열에서 쓰기를 시작할 위치를 나타내는 인덱스(0부터 시작)입니다.
|
| |
| length:uint (default = 0) — 버퍼로 쓸 길이를 나타내는 부호 없는 정수입니다.
|
public function writeDouble(value:Number):void
| Player 버전 : | Flash Player 9 |
IEEE 754 배정밀도 64비트 부동 소수점 숫자를 씁니다.
매개 변수
| value:Number — 배정밀도 64비트 부동 소수점 숫자입니다.
|
public function writeFloat(value:Number):void
| Player 버전 : | Flash Player 9 |
IEEE 754 단정밀도 32비트 부동 소수점 숫자를 씁니다.
매개 변수
| value:Number — 단정밀도 32비트 부동 소수점 숫자입니다.
|
public function writeInt(value:int):void
| Player 버전 : | Flash Player 9 |
부호 있는 32비트 정수를 씁니다.
매개 변수
| value:int — 부호 있는 정수 바이트 값입니다.
|
public function writeMultiByte(value:String, charSet:String):void
| Player 버전 : | Flash Player 9 |
지정된 문자 세트를 사용하여 멀티바이트 문자열을 바이트 스트림에 씁니다.
매개 변수
public function writeObject(object:*):void
| Player 버전 : | Flash Player 9 |
객체를 바이트 스트림 또는 바이트 배열에 AMF 직렬 형식으로 씁니다.
매개 변수
참고 사항
public function writeShort(value:int):void
| Player 버전 : | Flash Player 9 |
16비트 정수를 씁니다. 매개 변수의 하위 16비트가 사용되며 상위 16비트는 무시됩니다.
매개 변수
public function writeUnsignedInt(value:uint):void
| Player 버전 : | Flash Player 9 |
부호 없는 32비트 정수를 씁니다.
매개 변수
| value:uint — 부호 없는 정수 바이트 값입니다.
|
public function writeUTF(value:String):void
| Player 버전 : | Flash Player 9 |
UTF-8 문자열을 바이트 스트림에 씁니다. UTF-8 문자열의 바이트 단위 길이를 16비트 정수로 먼저 쓰고 문자열의 문자를 나타내는 바이트를 씁니다.
매개 변수
오류
public function writeUTFBytes(value:String):void
| Player 버전 : | Flash Player 9 |
UTF-8 문자열을 씁니다. writeUTF()와 비슷하지만 문자열 앞에 16비트 길이 워드를 추가하지 않습니다.
매개 변수
다음 예제에서는
DataOutputExample 클래스를 사용하여 부울 값과 원주율의 배정밀도 부동 소수점 표현을 바이트 배열에 씁니다. 이는 다음 단계로 이루어집니다.
- 새 ByteArray 객체 인스턴스인
byteArr을 선언합니다.
- 부울 값
false에 해당하는 바이트 값과 원주율의 수학적 값에 해당하는 배정밀도 부동 소수점 값을 씁니다.
- 부울 값 및 배정밀도 부동 소수점 숫자를 다시 읽습니다.
코드 끝에 파일 끝 오류를 검사하는 코드 조각이 추가되어 있습니다. 이렇게 하면 바이트 스트림의 끝에 도달할 때 읽기를 멈출 수 있습니다.
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.
}
}
}
}
© 2004-2007 Adobe Systems Incorporated. All rights reserved.
Tue Oct 16 2007, 12:25 AM GMT-07:00
현재 페이지: http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/utils/IDataOutput.html