DataInputStream — 기계 독립적으로 기본형 데이터 읽기
DataInputStream — 기계 독립적으로 기본형 데이터 읽기
DataInputStream은 애플리케이션이 기반 입력 스트림에서 Java 기본 데이터 타입을 기계 독립적인 방식으로 읽을 수 있게 해 주는 데이터 입력 스트림이에요. 애플리케이션은 데이터 출력 스트림으로 쓴 데이터를 나중에 데이터 입력 스트림으로 다시 읽을 수 있어요. DataInputStream은 여러 동시 스레드에서 안전하지 않으므로, 둘 이상의 스레드가 사용한다면 적절한 동기화로 접근을 제어해야 해요.
본문
이 클래스는 java.io.InputStream → java.io.FilterInputStream을 상속하며 Closeable, DataInput, AutoCloseable을 구현합니다.
생성자
DataInputStream(InputStream in)— 지정한 기반InputStream을 사용하는DataInputStream을 만들어요.
메서드
final int read(byte[] b)— 포함된 입력 스트림에서 일부 바이트를 읽어 버퍼 배열b에 저장해요.final int read(byte[] b, int off, int len)— 포함된 입력 스트림에서 최대len바이트를 읽어 바이트 배열에 넣어요.final boolean readBoolean()—DataInput.readBoolean의 일반 계약을 따르며boolean을 읽어요.final byte readByte()—byte를 읽어요.final char readChar()—char를 읽어요.final double readDouble()—double을 읽어요.final float readFloat()—float을 읽어요.final void readFully(byte[] b)— 바이트를 정확히 다 읽어요.final void readFully(byte[] b, int off, int len)— 지정한 만큼 바이트를 정확히 읽어요.final int readInt()—int를 읽어요.final String readLine()— (더 이상 권장하지 않음) 텍스트 한 줄을 읽어요. 바이트를 문자로 제대로 변환하지 못할 수 있어요.final long readLong()—long을 읽어요.final short readShort()—short를 읽어요.final int readUnsignedByte()— 부호 없는 바이트를 읽어요.final int readUnsignedShort()— 부호 없는 short를 읽어요.final String readUTF()—DataInput.readUTF의 일반 계약을 따르며 수정된 UTF-8 문자열을 읽어요.final int skipBytes(int n)— 입력에서 바이트를 건너뛰어요.
DataInputStream은 네트워크나 파일에서 이진 데이터를 읽을 때 DataOutputStream과 짝을 이루어 많이 사용돼요.