JavaTM Platform
Standard Ed. 6

java.io
클래스 Writer

java.lang.Object 
  상위를 확장 java.io.Writer
모든 구현된 인터페이스:
Closeable , Flushable , Appendable
직계의 기존의 서브 클래스:
BufferedWriter , CharArrayWriter , FilterWriter , OutputStreamWriter , PipedWriter , PrintWriter , StringWriter


public abstract class Writer
extends Object
implements Appendable , Closeable , Flushable

문자 스트림에 기입하기 위한 abstract 클래스입니다. 서브 클래스에서의 구현이 필요한 메소드는, write(char[], int, int), flush(), 및 close() 뿐입니다. 다만, 대부분의 서브 클래스는, 효율성의 향상 또는 기능의 추가, 혹은 그 양쪽 모두를 위해서(때문에), 여기서 정의되는 메소드의 일부를 오버라이드(override) 합니다.

도입된 버젼:
JDK1. 1
관련 항목:
Writer , BufferedWriter , CharArrayWriter , FilterWriter , OutputStreamWriter , FileWriter , PipedWriter , PrintWriter , StringWriter , Reader

필드의 개요
protected  Object lock
          이 스트림에 대한 처리의 동기에게 사용하는 객체입니다.
 
생성자 의 개요
protected Writer ()
          라이터 자체로 Critical Section이 동기 하는 문자 스트림 라이터를 새롭게 작성합니다.
protected Writer (Object  lock)
          지정된 객체로 Critical Section이 동기 하는 문자 스트림 라이터를 새롭게 작성합니다.
 
메소드의 개요
 Writer append (char c)
          지정된 문자를 이 라이터에 추가합니다.
 Writer append (CharSequence  csq)
          지정된 문자 순서를 이 라이터에 추가합니다.
 Writer append (CharSequence  csq, int start, int end)
          지정된 문자 순서의 서브 순서를 이 라이터에 추가합니다.
abstract  void close ()
          스트림을 최초로 플래시 해, 닫습니다.
abstract  void flush ()
          스트림을 플래시 합니다.
 void write (char[] cbuf)
          문자의 배열을 기입합니다.
abstract  void write (char[] cbuf, int off, int len)
          문자의 배열의 일부를 기입합니다.
 void write (int c)
          단일의 문자를 기입합니다.
 void write (String  str)
          캐릭터 라인을 기입합니다.
 void write (String  str, int off, int len)
          캐릭터 라인의 일부를 기입합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

lock

protected Object  lock
이 스트림에 대한 처리의 동기에게 사용하는 객체입니다. 효율을 자주(잘) 하기 위한(해), 문자 스트림 객체는, 다른 객체를 사용해 Critical Section을 보호할 수가 있습니다. 그 때문에, 서브 클래스에서는 this 는 아니고 이 필드의 객체를 사용하는지, 동기화한 메소드를 사용하도록 해 주세요.

생성자 의 상세

Writer

protected Writer()
라이터 자체로 Critical Section이 동기 하는 문자 스트림 라이터를 새롭게 작성합니다.


Writer

protected Writer(Object  lock)
지정된 객체로 Critical Section이 동기 하는 문자 스트림 라이터를 새롭게 작성합니다.

파라미터:
lock - 동기 하는 객체
메소드의 상세

write

public void write(int c)
           throws IOException 
단일의 문자를 기입합니다. 기입해지는 문자는, 지정된 정수치의 하위 16 비트에 포함됩니다. 상위 16 비트는 무시됩니다.

유효한 단일 문자의 출력을 지원하기 위한 서브 클래스에서는, 이 메소드를 오버라이드(override) 합니다.

파라미터:
c - 기입하는 문자를 지정하는 int
예외:
IOException - 입출력 에러가 발생했을 경우

write

public void write(char[] cbuf)
           throws IOException 
문자의 배열을 기입합니다.

파라미터:
cbuf - 기입하는 문자의 배열
예외:
IOException - 입출력 에러가 발생했을 경우

write

public abstract void write(char[] cbuf,
                           int off,
                           int len)
                    throws IOException 
문자의 배열의 일부를 기입합니다.

파라미터:
cbuf - 문자의 배열
off - 문자의 기입 개시 오프셋(offset)
len - 기입하는 문자수
예외:
IOException - 입출력 에러가 발생했을 경우

write

public void write(String  str)
           throws IOException 
캐릭터 라인을 기입합니다.

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

write

public void write(String  str,
                  int off,
                  int len)
           throws IOException 
캐릭터 라인의 일부를 기입합니다.

파라미터:
str - 캐릭터 라인
off - 문자의 기입 개시 오프셋(offset)
len - 기입하는 문자수
예외:
IndexOutOfBoundsException - off 가 부의 경우,len 가 부의 경우, 또는 off+len 가 부인지, 지정된 캐릭터 라인의 길이보다 큰 경우
IOException - 입출력 에러가 발생했을 경우

append

public Writer  append(CharSequence  csq)
              throws IOException 
지정된 문자 순서를 이 라이터에 추가합니다.

이 메소드를 out.append(csq) 의 형식에서 호출했을 경우, 다음의 호출과 같은 결과를 얻을 수 있습니다.

out.write(csq.toString()) 

문자 순서 csqtoString 의 스펙에 따라서는, 그 순서 전체가 추가되지 않을 가능성도 있습니다. 예를 들어, 문자 버퍼의 toString 메소드를 호출했을 경우, 그 버퍼의 위치와 리밋트에 의해 정해지는 내용을 가지는 서브 순서가 돌려주어집니다.

정의:
인터페이스 Appendable 내의 append
파라미터:
csq - 추가되는 문자 순서. csqnull 의 경우는, 이 라이터에 「null」라고 하는 4 문자가 추가된다
반환값:
이 라이터
예외:
IOException - 입출력 에러가 발생했을 경우
도입된 버젼:
1.5

append

public Writer  append(CharSequence  csq,
                     int start,
                     int end)
              throws IOException 
지정된 문자 순서의 서브 순서를 이 라이터에 추가합니다. Appendable 입니다.

csqnull 가 아닐 때에, 이 메소드를 out.append(csq, start, end) 의 형식에서 호출했을 경우, 다음의 호출과 같은 결과를 얻을 수 있습니다.

out.write(csq.subSequence(start, end). toString()) 

정의:
인터페이스 Appendable 내의 append
파라미터:
csq - 문자 서브 순서의 추가원이 되는 문자 순서. csqnull 의 경우,csq 에 「null」의 4 문자가 포함되는것 같이 문자가 추가되는
start - 문자 서브 순서의 최초의 문자의 인덱스
end - 문자 서브 순서의 마지막 문자에 계속되는 문자의 인덱스
반환값:
이 라이터
예외:
IndexOutOfBoundsException - start 또는 end 가 0 보다 작은 값의 경우,startend 보다 큰 경우, 또는 endcsq.length() 보다 큰 경우
IOException - 입출력 에러가 발생했을 경우
도입된 버젼:
1.5

append

public Writer  append(char c)
              throws IOException 
지정된 문자를 이 라이터에 추가합니다.

이 메소드를 out.append(c) 의 형식에서 호출했을 경우, 다음의 호출과 같은 결과를 얻을 수 있습니다.

out.write(c) 

정의:
인터페이스 Appendable 내의 append
파라미터:
c - 추가하는 16 비트 문자
반환값:
이 라이터
예외:
IOException - 입출력 에러가 발생했을 경우
도입된 버젼:
1.5

flush

public abstract void flush()
                    throws IOException 
스트림을 플래시 합니다. 스트림이 각종의 write() 메소드에 의해 기입해진 문자를 버퍼에 보존되어 있는 경우는, 이러한 문자의 목적의 전송 먼저 즉시 문자를 기입합니다. 게다가 전송처가 다른 문자 스트림 또는 바이트 스트림의 경우는, 이 송신지를 플래시 합니다. 즉, 1 개의 flush()의 호출로, 관련하는 Writer 및 OutputStream 의 모든 버퍼를 플래시 합니다.

이 스트림의 목적의 전송처가, 기본이 되는 operating system에 의해 제공되는 추상화 객체 (파일등)인 경우, 스트림을 플래시 하는 것으로, 그때까지 스트림에 기입해진 바이트가 operating system에게 건네져 기입해지는 것은 보증됩니다만, 디스크 드라이버등의 물리 디바이스에 실제로 기입해지는 것은 보증되지 않습니다.

정의:
인터페이스 Flushable 내의 flush
예외:
IOException - 입출력 에러가 발생했을 경우

close

public abstract void close()
                    throws IOException 
스트림을 최초로 플래시 해, 닫습니다. 스트림이 닫혀진 뒤에 write() 또는 flush()를 호출하면(자), IOException 가 throw 됩니다. 벌써 닫혀지고 있는 스트림을 닫아도, 무슨 영향도 없습니다.

정의:
인터페이스 Closeable 내의 close
예외:
IOException - 입출력 에러가 발생했을 경우

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 도 참조해 주세요.