|
JavaTM Platform Standard Ed. 6 |
|||||||||
��һ���� ��һ���� | ��� ��� ������ | |||||||||
ժҪ�� Ƕ�� | �ֶ� | ���췽�� | ���� | ��ϸ��Ϣ�� �ֶ� | ���췽�� | ���� |
java.lang.Object java.io.InputStream java.io.ByteArrayInputStream
public class ByteArrayInputStream
ByteArrayInputStream
����һ���ڲ����������û��������������ж�ȡ���ֽڡ��ڲ����������� read
����Ҫ�ṩ����һ���ֽڡ�
�ر� ByteArrayInputStream ��Ч�������еķ����ڹرմ������Կɱ����ã�����������κ� IOException��
StringBufferInputStream
�ֶ�ժҪ | |
---|---|
protected byte[] |
buf
�ɸ����Ĵ������ṩ�� byte ���顣 |
protected int |
count
�������������������һ����Ч�ַ���������һ�������� |
protected int |
mark
���е�ǰ�ı��λ�á� |
protected int |
pos
Ҫ���������������ж�ȡ����һ���ַ��������� |
���췽��ժҪ | |
---|---|
ByteArrayInputStream(byte[] buf)
����һ�� ByteArrayInputStream ��ʹ�� buf ��Ϊ�仺�������顣 |
|
ByteArrayInputStream(byte[] buf,
int offset,
int length)
���� ByteArrayInputStream ��ʹ�� buf ��Ϊ�仺�������顣 |
����ժҪ | |
---|---|
int |
available()
���ؿɴӴ���������ȡ������������ʣ���ֽ����� |
void |
close()
�ر� ByteArrayInputStream ��Ч�� |
void |
mark(int readAheadLimit)
�������еĵ�ǰ���λ�á� |
boolean |
markSupported()
���Դ� InputStream �Ƿ�֧�� mark/reset�� |
int |
read()
�Ӵ��������ж�ȡ��һ�������ֽڡ� |
int |
read(byte[] b,
int off,
int len)
����� len �������ֽڴӴ����������� byte ���顣 |
void |
reset()
����������λ������Ϊ���λ�á� |
long |
skip(long n)
�Ӵ������������� n �������ֽڡ� |
���� java.io.InputStream �̳еķ��� |
---|
read |
���� java.lang.Object �̳еķ��� |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
�ֶ���ϸ��Ϣ |
---|
protected byte[] buf
buf[0]
�� buf[count-1]
��ֻ�ܴ����ж�ȡ���ֽڣ�Ԫ�� buf[pos]
��Ҫ��ȡ����һ���ֽڡ�
protected int pos
count
ֵ�����������������ж�ȡ����һ���ֽ��� buf[pos]
��
protected int mark
mark()
�����ɽ������ڻ������ڵ���һ��λ�ô���ͨ�� reset()
��������ǰ������λ������Ϊ�˵㡣
�����δ���ñ�ǣ�����ֵ�Ǵ��ݸ����췽����ƫ���������δ�ṩƫ����������ֵΪ 0����
protected int count
buf
�ij��ȡ����� buf
�����һ���ɴ��������������ж�ȡ���ֽ�λ�ô�һ��
���췽����ϸ��Ϣ |
---|
public ByteArrayInputStream(byte[] buf)
ByteArrayInputStream
��ʹ�� buf
��Ϊ�仺�������顣�û��������鲻�Ǹ��Ƶõ��ġ�pos
�ij�ʼֵ�� 0
��count
�ij�ʼֵ�� buf
�ij��ȡ�
buf
- ���뻺������public ByteArrayInputStream(byte[] buf, int offset, int length)
ByteArrayInputStream
��ʹ�� buf
��Ϊ�仺�������顣pos
�ij�ʼֵ�� offset
��count
�ij�ʼֵ�� offset+length
�� buf.length
�е���Сֵ���û��������鲻�Ǹ��Ƶõ��ġ����û������ı������Ϊָ����ƫ������
buf
- ���뻺������offset
- ��������Ҫ��ȡ�ĵ�һ���ֽڵ�ƫ������length
- �ӻ������ж�ȡ������ֽ�����������ϸ��Ϣ |
---|
public int read()
0
�� 255
��Χ�ڵ� int
�ֽ�ֵ�������Ϊ������ĩβ��û�п��õ��ֽڣ���ֵ -1
��
�� read
��������������
InputStream
�е� read
-1
��public int read(byte[] b, int off, int len)
len
�������ֽڴӴ����������� byte ���顣��� pos
���� count
���� -1
ָʾ�ļ�����������ȡ���ֽ��� k
���� len
�� count-pos
�еĽ�С�ߡ���� k
������������ System.arraycopy
ִ�еķ�ʽ�� buf[pos]
�� buf[pos+k-1]
���ֽڸ��Ƶ� b[off]
�� b[off+k-1]
�С���ֵ k
�� pos
��Ӳ����� k
��
�� read
��������������
InputStream
�е� read
b
- �洢�������ݵĻ�������off
- Ŀ������ b
����ʼƫ������len
- ��ȡ������ֽ�����
-1
��
NullPointerException
- ��� b
Ϊ null
��
IndexOutOfBoundsException
- ��� off
����len
�������� len
���� b.length - off
InputStream.read()
public long skip(long n)
n
�������ֽڡ�����ѵ���������ĩβ������ܻ��������ٵ��ֽڡ�ʵ���������ֽ��� k
���� n
�� count-pos
�еĽ�С�ߡ���ֵ k
�� pos
��Ӳ����� k
��
InputStream
�е� skip
n
- Ҫ�������ֽ�����
public int available()
����ֵ�� count - pos
������Ҫ�����뻺�����ж�ȡ��ʣ���ֽ�����
InputStream
�е� available
public boolean markSupported()
InputStream
�Ƿ�֧�� mark/reset��ByteArrayInputStream
�� markSupported
����ʼ�շ��� true
��
InputStream
�е� markSupported
true
������ false
��InputStream.mark(int)
,
InputStream.reset()
public void mark(int readAheadLimit)
�����δ���ñ�ǣ�����ֵ�Ǵ��ݸ����췽����ƫ���������δ�ṩƫ����������ֵΪ 0����
ע��readAheadLimit
���ڴ���û�����塣
InputStream
�е� mark
readAheadLimit
- �ڱ��λ��ʧЧǰ���Զ�ȡ�ֽڵ�������ơ�InputStream.reset()
public void reset()
InputStream
�е� reset
InputStream.mark(int)
,
IOException
public void close() throws IOException
Closeable
�е� close
InputStream
�е� close
IOException
- ������� I/O ����
|
JavaTM Platform Standard Ed. 6 |
|||||||||
��һ���� ��һ���� | ��� ��� ������ | |||||||||
ժҪ�� Ƕ�� | �ֶ� | ���췽�� | ���� | ��ϸ��Ϣ�� �ֶ� | ���췽�� | ���� |
��Ȩ���� 2007 Sun Microsystems, Inc. ��������Ȩ���� ����������֤��������������ĵ����·ַ�������