|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
java.lang.Object | +--java.io.InputStream | +--java.io.FilterInputStream | +--javax.crypto.CipherInputStream
CipherInputStream 는 InputStream 와 Cipher 로 구성되어 있으므로, read() 메소드는 기본이 되는 InputStream 로부터 읽힌 데이터를 돌려줍니다만, Cipher 에 의해 추가의 처리를 하고 있습니다. Cipher 는 완전하게 초기화하지 않으면, CipherInputStream 로 사용할 수 없습니다.
예를 들어, Cipher 가 복호화(decode)용으로 초기화되고 있으면(자), CipherInputStream 는 복호화(decode) 된 데이터를 돌려주기 전에, 데이터를 읽어들여 복호화(decode) 하려고 합니다.
이 클래스는 상위 클래스 java.io.FilterInputStream 및 java.io.InputStream 의 시멘틱스, 특히 실패 시멘틱스에 엄밀하게 따릅니다. 이 클래스에서는 그러한 메소드는 상위 클래스에서 엄밀하게 지정되고 있어 모두 오버라이드(override) 됩니다. 게다가 이 클래스는 상위 클래스에서 슬로우 되지 않는 모든 예외를 캐치 합니다. 특히,skip
메소드는 스킵을 실시해,available
메소드는 캡슐화된 Cipher 에 의해 처리된 데이터만을 카운트 합니다.
이 클래스를 사용하는 프로그래머는 이 클래스에서 정의되어 있지 않은 메소드, 또는 오버라이드(override)되어 있지 않은 메소드 (새로운 메소드나, 나중에 슈퍼 클래스의 1 개에 추가되는 constructor 등)를 절대로 사용하지 말아 주세요. 그러한 메소드의 설계와 구현에서는 CipherInputStream 에 관한 보안상의 영향이 고려되어 있지 않을 가능성이 있기 (위해)때문에입니다.
InputStream
,
FilterInputStream
,
Cipher
,
CipherOutputStream
필드의 개요 |
클래스 java.io. FilterInputStream 에서 상속받은 필드 |
in |
생성자의 개요 | |
protected |
CipherInputStream (InputStream is)
InputStream 로부터 Cipher 를 지정하지 않고 CipherInputStream 를 구축합니다. |
|
CipherInputStream (InputStream is,
Cipher c)
InputStream 및 Cipher 로부터 CipherInputStream 를 구축합니다. |
메소드의 개요 | |
int |
available ()
블록 하지 않고 이 입력 스트림으로부터 읽어들일 수 있는 바이트수를 돌려줍니다. |
void |
close ()
이 입력 스트림을 닫아 그 스트림에 관련하는 모든 system resource를 해방합니다. |
boolean |
markSupported ()
이 입력 스트림이, mark 메소드와 reset 메소드를 서포트하고 있을지 어떨지를 판정합니다. |
int |
read ()
이 입력 스트림으로부터 , 데이터의 다음의 바이트를 읽어들입니다. |
int |
read (byte[] b)
최대 b.length 바이트까지의 데이터를, 이 입력 스트림으로부터 바이트 배열에 읽어들입니다.
|
int |
read (byte[] b,
int off,
int len)
이 입력 스트림으로부터 len 바이트까지의 데이터를 바이트의 배열에 읽어들입니다. |
long |
skip (long n)
블록 하지 않고 이 입력 스트림으로부터 읽어들일 수가 있는 바이트로부터 n 바이트의 입력을 스킵 합니다.
|
클래스 java.io. FilterInputStream 에서 상속받은 메소드 |
mark , reset |
클래스 java.lang. Object 에서 상속받은 메소드 |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자의 상세 |
public CipherInputStream(InputStream is, Cipher c)
is
- 처리되는 입력 스트림c
- 초기화된 Cipher 오브젝트protected CipherInputStream(InputStream is)
is
- 처리되는 입력 스트림메소드의 상세 |
public int read() throws IOException
0
~ 255
의 범위의 int
로서 돌려주어집니다. 스트림의 마지막에 이르러 바이트가 없는 경우는 값 -1
이 돌려주어집니다. 이 메소드는 입력 데이터가 읽히게 되는지 스트림의 마지막이 검출되는지 또는 예외가 슬로우 될 때까지 블록 합니다.
FilterInputStream
내의 read
-1
IOException
- 입출력 에러가 발생했을 경우FilterInputStream.in
public int read(byte[] b) throws IOException
b.length
바이트까지의 데이터를, 이 입력 스트림으로부터 바이트 배열에 읽어들입니다.
InputStream
의 read
메소드는 인수 b
,0
, 및 b.length
를 지정해 3 개의 인수를 취하는 read
메소드를 호출합니다.
FilterInputStream
내의 read
b
- 데이터의 read처의 버퍼
-1
IOException
- 입출력 에러가 발생했을 경우InputStream.read(byte[], int, int)
public int read(byte[] b, int off, int len) throws IOException
len
바이트까지의 데이터를 바이트의 배열에 읽어들입니다. 이 메소드는 일부의 입력 데이터를 얻을 수 있게 될 때까지 블록 합니다. 최초의 인수가 null
의 경우는 len
까지의 바이트가 읽힌 뒤 폐기됩니다.
FilterInputStream
내의 read
b
- 데이터의 read처의 버퍼off
- 데이터의 개시 오프셋(offset)len
- 읽히는 최대 바이트수
-1
IOException
- 입출력 에러가 발생했을 경우InputStream.read()
public long skip(long n) throws IOException
n
바이트의 입력을 스킵 합니다.
스킵 되는 바이트가 요구된 바이트보다 적은 경우가 있습니다. 실제로 스킵 된 바이트수는 n
또는
를 호출한 결과의 쳐 작은 (분)편입니다. available
n
가 제로보다 작은 경우, 바이트는 스킵 되지 않습니다.
실제로 스킵 된 바이트수가 돌려주어집니다.
FilterInputStream
내의 skip
n
- 스킵 하는 바이트수
IOException
- 입출력 에러가 발생했을 경우public int available() throws IOException
InputStream
의 available
메소드는 0
을 돌려줍니다. 이 메소드는 서브 클래스에서 오버라이드(override) 할필요가 있습니다.
FilterInputStream
내의 available
IOException
- 입출력 에러가 발생했을 경우FilterInputStream.in
public void close() throws IOException
CipherInputStream
의 close
메소드가, 기본이 되는 입력 스트림의 close
메소드를 호출합니다.
FilterInputStream
내의 close
IOException
- 입출력 에러가 발생했을 경우FilterInputStream.in
public boolean markSupported()
mark
메소드와 reset
메소드를 서포트하고 있을지 어떨지를 판정합니다. 이러한 메소드는 서포트되고 있지 않습니다.
FilterInputStream
내의 markSupported
mark
메소드와 reset
메소드를 서포트하고 있지 않았기 때문에,false
InputStream.mark(int)
,
InputStream.reset()
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.