DataOutput (Java Platform SE 6) - xrath.com 에서 번역됨

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

JavaTM Platform
Standard Ed. 6

앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드

## java.io
인터페이스 DataOutput

기존의 서브 인터페이스의 일람:
  ImageOutputStream , ObjectOutput

기존의 구현 클래스의 일람:
  DataOutputStream , FileCacheImageOutputStream , FileImageOutputStream , ImageOutputStreamImpl , MemoryCacheImageOutputStream , ObjectOutputStream , RandomAccessFile

    public interface DataOutput

`DataOutput` 인터페이스는, Java 의 원시형이 있으면 그 데이터를 일련의 바이트로 변환해 바이너리 스트림에 기입하기 위해서(때문에) 제공되고 있습니다. 또,`String` 를수정 UTF-8 형식으로 변환해 결과의 일련의 바이트를 기입하는 기능도 있습니다.

이 인터페이스의 바이트를 기입하는 모든 메소드에서는, 하등의 이유로써 바이트를 기입할 수 없는 경우는, 일반적으로,`IOException` 가 throw 됩니다.

도입된 버젼:
  JDK1. 0
관련 항목:
  `DataInput` , `DataOutputStream`

메소드의 개요
`void` | `write (byte[] b)` 출력 스트림에 배열 `b` 의 모든 바이트를 기입합니다.
`void` | `write (byte[] b, int off, int len)` 배열 `b` 로부터 `len` 바이트를 차례로 출력 스트림에 기입합니다.
`void` | `write (int b)` 인수 `b` 의 하위 8 비트를 출력 스트림에 기입합니다.
`void` | `writeBoolean (boolean v)` 1 개의 `boolean` 치를 출력 스트림에 기입합니다.
`void` | `writeByte (int v)` 인수 `v` 의 하위 8 비트를 출력 스트림에 기입합니다.
`void` | `writeBytes (String s)` 캐릭터 라인을 출력 스트림에 기입합니다.
`void` | `writeChar (int v)` 2 바이트로부터 구성되는 `char` 치를 출력 스트림에 기입합니다.
`void` | `writeChars (String s)` 캐릭터 라인 `s` 내의 각 문자를, 1 문자 마다 2 바이트씩 차례로 기입합니다.
`void` | `writeDouble (double v)` 8 바이트로부터 구성되는 `double` 치를 출력 스트림에 기입합니다.
`void` | `writeFloat (float v)` 4 바이트로부터 구성되는 `float` 치를 출력 스트림에 기입합니다.
`void` | `writeInt (int v)` 4 바이트로부터 구성되는 `int` 치를 출력 스트림에 기입합니다.
`void` | `writeLong (long v)` 8 바이트로부터 구성되는 `long` 치를 출력 스트림에 기입합니다.
`void` | `writeShort (int v)` 인수의 값을 나타내는 2 바이트를 출력 스트림에 기입합니다.
`void` | `writeUTF (String s)` 길이 정보의 2 바이트를 출력 스트림에 기입합니다.

메소드의 상세

### write

    void write(int b)
               throws IOException

  인수 `b` 의 하위 8 비트를 출력 스트림에 기입합니다. `b` 의 상위 24 비트는 무시됩니다.

  파라미터:
    `b` - 기입하는 바이트
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### write

    void write(byte[] b)
               throws IOException

  출력 스트림에 배열 `b` 의 모든 바이트를 기입합니다. `b` 가 `null` 의 경우,`NullPointerException` 가 throw 됩니다. `b.length` 가 제로의 경우, 기입해지는 바이트는 없습니다. 그렇지 않은 경우는, 우선 바이트 `b[0]`, 다음에 `b[1]` 으로 차례차례 기입해져 마지막에 바이트 `b[b.length-1]` 가 기입해집니다.

  파라미터:
    `b` - 데이터
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### write

    void write(byte[] b,
               int off,
               int len)
               throws IOException

  배열 `b` 로부터 `len` 바이트를 차례로 출력 스트림에 기입합니다. `b` 가 `null` 의 경우는,`NullPointerException` 가 throw 됩니다. `off` 가 0 보다 작은 값의 경우,`len` 가 0 보다 작은 값의 경우, 혹은 `off+len` 가 배열 `b` 의 길이보다 큰 경우에는,`IndexOutOfBoundsException` 가 throw 됩니다. `len` 가 제로의 경우, 기입해지는 바이트는 없습니다. 그렇지 않은 경우는, 우선 바이트 `b[off]`, 다음에 `b[off+1]` 와 차례차례 기입해져 마지막에 바이트 `b[off+len-1]` 가 기입해집니다.

  파라미터:
    `b` - 데이터
    `off` - 데이터의 개시 오프셋(offset)
    `len` - 기입하는 바이트수
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeBoolean

    void writeBoolean(boolean v)
                      throws IOException

  1 개의 `boolean` 치를 출력 스트림에 기입합니다. 인수 `v` 가 `true` 의 경우는, 값 `(byte) 1` 이 기입해집니다. `v` 가 `false` 의 경우는, 값 `(byte) 0` 이 기입해집니다. 이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readBoolean` 메소드에 의해 읽힙니다. 다음에,`readBoolean` 메소드에 의해,`v` 에 동일한 `boolean` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 boolean
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeByte

    void writeByte(int v)
                   throws IOException

  인수 `v` 의 하위 8 비트를 출력 스트림에 기입합니다. `v` 의 상위 24 비트는 무시됩니다. 이것은 `writeByte` 가, 정수 인수의 `write` 와 완전히 같은 것을 의미합니다. 이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readByte` 메소드에 의해 읽힙니다. 다음에,`readByte` 메소드에 의해,`(byte) v` 에 동일한 `byte` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 바이트치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeShort

    void writeShort(int v)
                    throws IOException

  인수의 값을 나타내는 2 바이트를 출력 스트림에 기입합니다. 다음에 나타내는 바이트치가, 이 차례로 기입해집니다.

       (byte)(0xff & (v >> 8))
       (byte)(0xff & v)

  이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readShort` 메소드에 의해 읽힙니다. 다음에,`readShort` 메소드에 의해,`(short) v` 에 동일한 `short` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 `short` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeChar

    void writeChar(int v)
                   throws IOException

  2 바이트로부터 구성되는 `char` 치를 출력 스트림에 기입합니다. 다음에 나타내는 바이트치가, 이 차례로 기입해집니다.

       (byte)(0xff & (v >> 8))
       (byte)(0xff & v)

  이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readChar` 메소드에 의해 읽힙니다. 다음에,`readChar` 메소드에 의해,`(char) v` 에 동일한 `char` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 `char` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeInt

    void writeInt(int v)
                  throws IOException

  4 바이트로부터 구성되는 `int` 치를 출력 스트림에 기입합니다. 다음에 나타내는 바이트치가, 이 차례로 기입해집니다.

       (byte)(0xff & (v >> 24))
       (byte)(0xff & (v >> 16))
       (byte)(0xff & (v >>    8))
       (byte)(0xff & v)

  이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readInt` 메소드에 의해 읽힙니다. `readInt` 메소드는 다음에,`v` 에 동일한 `int` 를 돌려줍니다.

  파라미터:
    `v` - 기입해지는 `int` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeLong

    void writeLong(long v)
                   throws IOException

  8 바이트로부터 구성되는 `long` 치를 출력 스트림에 기입합니다. 다음에 나타내는 바이트치가, 이 차례로 기입해집니다.

       (byte)(0xff & (v >> 56))
       (byte)(0xff & (v >> 48))
       (byte)(0xff & (v >> 40))
       (byte)(0xff & (v >> 32))
       (byte)(0xff & (v >> 24))
       (byte)(0xff & (v >> 16))
       (byte)(0xff & (v >>  8))
       (byte)(0xff & v)

  이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readLong` 메소드에 의해 읽힙니다. 다음에,`readLong` 메소드에 의해,`v` 에 동일한 `long` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 `long` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeFloat

    void writeFloat(float v)
                    throws IOException

  4 바이트로부터 구성되는 `float` 치를 출력 스트림에 기입합니다. 이 때문에는, 우선 `Float.floatToIntBits` 메소드와 완전히 같은 방법으로 이 `float` 치를 `int` 로 변환하고 나서,`writeInt` 메소드와 완전히 같은 방법으로 `int` 치를 기입합니다. 이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readFloat` 메소드에 의해 읽힙니다. 다음에,`readFloat` 메소드에 의해,`v` 에 동일한 `float` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 `float` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeDouble

    void writeDouble(double v)
                     throws IOException

  8 바이트로부터 구성되는 `double` 치를 출력 스트림에 기입합니다. 이 때문에는, 우선 `Double.doubleToLongBits` 메소드와 완전히 같은 방법으로 이 `double` 치를 `long` 로 변환하고 나서,`writeLong` 메소드와 완전히 같은 방법으로 `long` 치를 기입합니다. 이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readDouble` 메소드에 의해 읽힙니다. 다음에,`readDouble` 메소드에 의해,`v` 에 동일한 `double` 가 돌려주어집니다.

  파라미터:
    `v` - 기입해지는 `double` 치
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeBytes

    void writeBytes(String  s)
                    throws IOException

  캐릭터 라인을 출력 스트림에 기입합니다. 캐릭터 라인 `s` 의 각 문자가 차례로 꺼내져 1 바이트가 출력 스트림에 기입해집니다. `s` 가 `null` 의 경우는,`NullPointerException` 가 throw 됩니다.

  `s.length` 가 제로의 경우, 바이트는 기입해지지 않습니다. 제로가 아닌 경우, 문자 `s[0]` 이 최초로 기입해져 다음에 `s[1]`, 이라고 하는 상태에 계속되어, 마지막에 문자 `s[s.length-1]` 가 기입해집니다. 각 문자에 대해서는,`writeByte` 메소드와 완전히 같은 방법으로, 1 바이트, 즉 하위 바이트가 기입해집니다. 캐릭터 라인내의 각 문자의 상위 8 비트는 무시됩니다.

  파라미터:
    `s` - 기입해지는 바이트의 캐릭터 라인
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeChars

    void writeChars(String  s)
                    throws IOException

  캐릭터 라인 `s` 내의 각 문자를, 1 문자 마다 2 바이트씩 차례로 기입합니다. `s` 가 `null` 의 경우,`NullPointerException` 가 throw 됩니다. `s.length` 가 제로의 경우, 기입해지는 문자는 없습니다. 그렇지 않은 경우는, 우선 문자 `s[0]`, 다음에 `s[1]` 으로 차례차례 기입해져 마지막에 문자 `s[s.length-1]` 가 기입해집니다. 각 문자에 대해서는,`writeChar` 메소드와 완전히 같은 방법으로, 상위 바이트를 먼저 해 2 바이트가 실제로 기입해집니다.

  파라미터:
    `s` - 기입해지는 캐릭터 라인의 값
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

### writeUTF

    void writeUTF(String  s)
                  throws IOException

  길이 정보의 2 바이트를 출력 스트림에 기입합니다. 그 뒤에는, 캐릭터 라인 `s` 내의 각 문자의수정 UTF-8 표현이 계속됩니다. `s` 가 `null` 의 경우,`NullPointerException` 가 throw 됩니다. 캐릭터 라인 `s` 내의 각 문자는, 문자의 값에 근거해, 1, 2, 또는 3 바이트의 그룹에 변환됩니다.

  문자 `c` 가 `\u0001` ~ `\u007f` 의 범위에 있는 경우, 다음과 같은 1 바이트로 표현됩니다.

      (byte) c

  문자 `c` 가 `\u0000` 의 경우나,`\u0080` ~ `\u07ff` 의 범위에 있는 경우에는, 다음의 순서로 기입해지는 2 바이트에 의해 나타내집니다.

       (byte)(0xc0 | (0x1f & (c >> 6)))
       (byte)(0x80 | (0x3f & c))

  문자 `c` 가 `\u0800` ~ `uffff` 의 범위에 있는 경우, 다음의 순서로 기입해지는 3 바이트에 의해 나타내집니다.

       (byte)(0xe0 | (0x0f & (c >> 12)))
       (byte)(0x80 | (0x3f & (c >>  6)))
       (byte)(0x80 | (0x3f & c))

  우선,`s` 의 모든 문자를 나타내는데 필요한 총바이트수가 계산됩니다. 이 수치가 `65535` 를 넘는 경우는,`UTFDataFormatException` 가 throw 됩니다. 그렇지 않은 경우는, 이 길이가 `writeShort` 메소드와 완전히 같은 방법으로 출력 스트림에 기입해집니다. 다음에, 캐릭터 라인 `s` 내의 각 문자의 1, 2, 또는 3 바이트 표현이 기입해집니다.

  이 메소드가 기입하는 바이트는,`DataInput` 인터페이스의 `readUTF` 메소드에 의해 읽힙니다. 다음에,`readUTF` 메소드에 의해,`s` 에 동일한 `String` 가 돌려주어집니다.

  파라미터:
    `s` - 기입해지는 캐릭터 라인의 값
  예외:
    `IOException` - 입출력 에러가 발생했을 경우

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

JavaTM Platform
Standard Ed. 6

앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.