DataOutputStream — 기본형 데이터를 이식 가능하게 쓰기
DataOutputStream — 기본형 데이터를 이식 가능하게 쓰기
DataOutputStream은 애플리케이션이 Java 기본 데이터 타입을 출력 스트림에 이식 가능한 방식으로 쓸 수 있게 해 주는 데이터 출력 스트림이에요. 애플리케이션은 그 뒤 데이터 입력 스트림으로 데이터를 다시 읽을 수 있어요. DataOutputStream은 여러 동시 스레드에서 안전하지 않으므로, 둘 이상의 스레드가 사용한다면 적절한 동기화로 접근을 제어해야 해요.
본문
이 클래스는 java.io.OutputStream → java.io.FilterOutputStream을 상속하며 Closeable, DataOutput, Flushable, AutoCloseable을 구현합니다.
필드
protected int written— 지금까지 데이터 출력 스트림에 쓴 바이트 수예요.
생성자
DataOutputStream(OutputStream out)— 지정한 기반 출력 스트림에 데이터를 쓰는 새 데이터 출력 스트림을 만들어요.
메서드
void flush()— 이 데이터 출력 스트림을 플러시해요.int size()— 카운터written의 현재 값, 즉 지금까지 이 데이터 출력 스트림에 쓴 바이트 수를 반환해요.void write(int b)— 지정한 바이트를 기반 출력 스트림에 써요.void write(byte[] b, int off, int len)—off오프셋부터b배열의len바이트를 기반 출력 스트림에 써요.final void writeBoolean(boolean v)—boolean을 기반 출력 스트림에 1바이트로 써요.final void writeByte(int v)—int의 낮은 8비트를 기반 출력 스트림에 1바이트로 써요.final void writeBytes(String s)— 문자열을 바이트 시퀀스로 기반 출력 스트림에 써요.final void writeChar(int v)—char를 기반 출력 스트림에 2바이트로 써요.final void writeChars(String s)— 문자열을 문자 시퀀스로, 각 문자를 2바이트씩 써요.final void writeDouble(double v)—Double.doubleToLongBits로 변환한long을 8바이트로 써요.final void writeFloat(float v)—Float.floatToIntBits로 변환한int를 4바이트로 써요.final void writeInt(int v)—int를 4바이트로 써요.final void writeLong(long v)—long을 8바이트로 써요.final void writeShort(int v)—int의 낮은 16비트를 2바이트로 써요.final void writeUTF(String s)— 문자열을 수정된 UTF-8 형식으로 써요.
DataOutputStream은 DataInputStream과 짝을 이루어 이진 데이터를 저장하거나 전송할 때 널리 사용돼요.