javatm platform
standard ed. 6

javax.imageio.stream
类 imageinputstreamimpl

java.lang.object 继承者 javax.imageio.stream.imageinputstreamimpl
所有<all>已实现的接口:
datainput, imageinputstream
直接已知子类:
filecacheimageinputstream, fileimageinputstream, imageoutputstreamimpl, memorycacheimageinputstream

public abstract class imageinputstreamimpl
extends object
implements imageinputstream

实现 imageinputstream 接口的抽象类。此类设计用于减少必须由子类实现的方法数。

需要特别指出的是,此类处理大部分或全部<all>关于字节顺序解释、缓冲、标记/重置、丢弃、关闭和释放的详细资料。


字段摘要
protected  intbitoffset
          流中的当前位偏移量。
protected  byteorderbyteorder
          流的字节顺序,其为枚举类 java.nio.byteorder 的实例,其中 byteorder.big_endian 指示网络字节顺序,byteorder.little_endian 指示反向顺序。
protected  longflushedpos
          可能<would>丢弃的数据前面的那个位置<locates>。
protected  longstreampos
          流中的当前读取位置<locates>。
 
构造方法摘要
imageinputstreamimpl()
          构造一个 imageinputstreamimpl
 
方法摘要
protected  voidcheckclosed()
          如果已经<have been>关闭流,则抛出 ioexception
 voidclose()
          关闭流。
protected  voidfinalize()
          在垃圾回收前结束<End>此对象。
 voidflush()
          丢弃当前流位置之前的流初始部分。
 voidflushbefore(long pos)
          丢弃所指示位置之前的流初始部分。
 intgetbitoffset()
          以整数的形式返回当前位偏移量,该整数在 0 到 7 之间(包含两者)。
 byteordergetbyteorder()
          以 java.nio.byteorder 枚举实例的形式返回从此流中读取数据值时所使用的字节顺序。
 longgetflushedposition()
          返回流中可以< kě yǐ>执行查找的最早位置。
 longgetstreamposition()
          返回流的当前字节位置。
 booleaniscached()
          默认实现返回 false。
 booleaniscachedfile()
          默认实现返回 false。
 booleaniscachedmemory()
          默认实现返回 false。
 longlength()
          返回 -1l,指示流的长度<attitudes>未知。
 voidmark()
          将当前流位置推进到标记位置的堆栈上。
abstract  intread()
          从流中读取单个字节,并以 int(0 到 255 之间)形式返回该字节。
 intread(byte[] b)
          调用 read(b, 0, b.length) 的便捷方法。
abstract  intread(byte[] b,int off,int len)
          从流中读取至多 len 个字节,并将其存储到 b 中(从 off 索引处开始<kāi shǐ>)。
 intreadbit()
          从流中读取单个字节,并以 int01)的形式返回该字节。
 longreadbits(int numbits)
          从流中读取位串 (bitstring) 并以 long 的形式返回,使第一个读取的位成为<Become>输出的最高有效位。
 booleanreadboolean()
          从流中读取一个字节,如果其不为 0,则返回 booleantrue;如果为 0,则返回 false
 bytereadbyte()
          从流中读取一个字节,并以 byte 值的形式返回该字节。
 voidreadbytes(iiobytebuffer buf,int len)
          从流中读取至多 len 个字节,并修改提供的 iiobytebuffer 以指示可以< kě yǐ>找到数据的 byte 数组、偏移量和长度<attitudes>。
 charreadchar()
          与 readunsignedshort 等效,唯一<wéi yī>的不同在于它的结果使用 char 数据类型返回。
 doublereaddouble()
          从流中读取 8 个字节,根据当前字节顺序将其连接(概念上),然后以 double 值的形式返回结果。
 floatreadfloat()
          从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),然后以 float 值的形式返回结果。
 voidreadfully(byte[] b)
          从流中读取 b.length 个字节,并将其存储到 b 中(从索引 0 开始<kāi shǐ>)。
 voidreadfully(byte[] b,int off,int len)
          从流中读取 len 个字节,并将其存储到 b 中(从索引 off 开始)。
 voidreadfully(char[] c,int off,int len)
          根据当前字节顺序从流中读取 len 个 char(无符号 16 位整数),并将其存储到 c 中(从索引 off 开始)。
 voidreadfully(double[] d,int off,int len)
          根据当前字节顺序从流中读取 len 个 double(64 位 ieee 双精度浮点值),并将其存储到 d 中(从索引 off 开始)。
 voidreadfully(float[] f,int off,int len)
          根据当前字节顺序从流中读取 len 个 float(32 位 ieee 单精度浮点值),并将其存储到 f 中(从索引 off 开始)。
 voidreadfully(int[] i,int off,int len)
          根据当前字节顺序从流中读取 len 个 int(有符号 32 位整数),并将其存储到 i 中(从索引 off 开始)。
 voidreadfully(long[] l,int off,int len)
          根据当前字节顺序从流中读取 len 个 long(有符号 64 位整数),并将其存储到 l 中(从索引 off 开始)。
 voidreadfully(short[] s,int off,int len)
          根据当前字节顺序从流中读取 len 个 short(有符号 16 位整数),并将其存储到 s 中(从索引 off 开始)。
 intreadint()
          从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),然后以 int 值的形式返回结果。
 stringreadline()
          从输入流中读取文本的下一行。
 longreadlong()
          从流中读取 8 个字节,根据当前字节顺序将其连接(概念上),然后以 long 值的形式返回结果。
 shortreadshort()
          从流中读取两个字节,根据当前字节顺序将其连接(概念上),然后以 short 值的形式返回结果。
 intreadunsignedbyte()
          从流中读取一个字节,将其转换为 int(概念上),使用 0xff 屏蔽以便去掉所有符号扩展位,然后以 byte 值的形式返回。
 longreadunsignedint()
          从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),将得到的值转换为 long,使用 0xffffffffl 屏蔽以便去掉所有符号扩展位,然后以无符号 long 值的形式返回结果。
 intreadunsignedshort()
          从流中读取两个字节,根据当前字节顺序将其连接(概念上),将得到的值转换为 int,使用 0xffff 屏蔽以便去掉所有符号扩展位,然后以无符号 int 值的形式返回结果。
 stringreadutf()js随机数
          读入一个已使用 gbk 修改版格式编码的字符串。
 voidreset()
          根据标记的堆栈重置当前流字节和位位置。
 voidseek(long pos)
          将当前流位置设置为所需的位置。
 voidsetbitoffset(int bitoffset)
          将位偏移量设置为 0 到 7 之间(包含两者)的整数。
 voidsetbyteorder(byteorder byteorder)
          设置希望<hope>以后从此流中读取数据值时使用的字节顺序。
 intskipbytes(int n)
          通过调用 seek(getstreamposition() + n) 推进当前流位置。
 longskipbytes(long n)
          通过调用 seek(getstreamposition() + n) 推进当前流位置。
 
从类 java.lang.object 继承的方法
clone, equals, getclass, hashcode, notify, notifyall, tostring, wait, wait, wait
 

字段详细校糶ǎn>畔

byteorder

protected byteorder byteorder
流的字节顺序,其为枚举类 java.nio.byteorder 的实例,其中 byteorder.big_endian 指示网络字节顺序,byteorder.little_endian 指示反向顺序。默认情况下,该值为 byteorder.big_endian


streampos

protected long streampos
流中的当前读取位置。子类负责<fù zé>根据其重写的任何会改变读取位置的方法保持此值最新。


bitoffset

protected int bitoffset
流中的当前位偏移量。子类负责<fù zé>根据其重写的任何会改变位偏移量的方法保持此值最新。


flushedpos

protected long flushedpos
可能<would>丢弃的数据前面的那个位置。不允许<allow>查找较小的位置。flushedpos 将总是 >=0。

构造方法详细信息

imageinputstreamimpl

public imageinputstreamimpl()
构造一个 imageinputstreamimpl

方法详细信息

checkclosed

protected final void checkclosed()     throws ioexception
如果已经<have been>关闭流,则抛出 ioexception。子类可以从其任何要求不关闭流的方法中调用此方法。

抛出:
ioexception - 如果已关闭流。

setbyteorder

public void setbyteorder(byteorder byteorder)
从接口 imageinputstream 复制的描述
设置希望<hope>以后从此流中读取数据值时使用的字节顺序。例如,如果以 4 字节整数形式读取字节序列 '0x01 0x02 0x03 0x04',则使用网络字节顺序时结果为值 '0x01020304',使用逆向字节顺序时为值 '0x04030201'。

枚举类 java.nio.byteorder 用于指定字节顺序。值 byteorder.big_endian 指定所谓的 big-endian 或网络字节顺序,该顺序中高位字节在前。motorola 和 sparc 处理器用此格式存储数据,而 intel 处理器使用与之相反的 byteorder.little_endian 顺序存储数据。

字节顺序对 readbits 方法返回的结果(或 imageoutputstream.writebits 写入的值)没有任何影响。

指定者:
接口 imageinputstream 中的 setbyteorder
参数:
byteorder - byteorder.big_endianjava.nio.byteorder.little_endian,指示以后读取时是使用网络顺序还是使用与之相反的顺序。
另请参见:
byteorder,imageinputstream.getbyteorder(),imageinputstream.readbits(int)

getbyteorder

public byteorder getbyteorder()
从接口 imageinputstream 复制的描述
java.nio.byteorder 枚举实例的形式返回从此流中读取数据值时所使用的字节顺序。

指定者:
接口 imageinputstream 中的 getbyteorder
返回:
byteorder.big_endianbyteorder.little_endian,指示要使用的字节顺序。
另请参见:
byteorder,imageinputstream.setbyteorder(java.nio.byteorder)

read

public abstract int read()   throws ioexception
从流中读取单个字节,并以 int(0 到 255 之间)形式返回该字节。 如果到达 eof,则返回 -1

子类必须提供此方法的实现。子类实现在退出前应该<yīng gāi>更新流位置。

在发生<occasionally occurred>读取前,流中的位偏移量必须被重置为 0。

指定者:
接口 imageinputstream 中的 read
返回:
流中下一个字节的值;如果到达 eof,则返回 -1
抛出:
ioexception - 如果流已经被关闭。

read

public int read(byte[] b)   throws ioexception
调用 read(b, 0, b.length) 的便捷方法。

在发生<occasionally occurred>读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 read
参数:
b - 用来接收写入的 byte 数组。
返回:
实际读取的字节数;或者 -1,指示 eof。
抛出:
nullpointerexception - 如果 bnull
ioexception - 如果发生 i/o 错误。

read

public abstract int read(byte[] b,     int off,     int len)   throws ioexception
从流中读取至多 len 个字节,并将其存储到 b 中(从 off 索引处开始)。如果由于<yóu yú>到达流末尾而没有读取任何字节,则返回 -1

在发生读取前,流中的位偏移量必须被重置为 0。

子类必须提供此方法的实现。子类实现在退出前应该<yīng gāi>更新流位置。

指定者:
接口 imageinputstream 中的 read
参数:
b - 用来接收写入的字节数组。
off - b 中要写入的起始位置。
len - 要读取的最大<zuì dà>字节数。
返回:
实际读取的字节数;或者 -1,指示 eof。
抛出:
indexoutofboundsexception - 如果 off 为负、len 为负或者 off + len 大于 b.length
nullpointerexception - 如果 bnull
ioexception - 如果发生 i/o 错误。

readbytes

public void readbytes(iiobytebuffer buf,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取至多 len 个字节,并修改提供的 iiobytebuffer 以指示可以找到数据的 byte 数组、偏移量和长度。调用者不应该试图修改 iiobytebuffer 中找到的数据。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readbytes
参数:
buf - 要修改的 iiobytebuffer 对象。
len - 要读取的最大<zuì dà> byte 数。
抛出:
ioexception - 如果发生 i/o 错误。

readboolean

public boolean readboolean()    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取一个字节,如果其不为 0,则返回 booleantrue;如果为 0,则返回 false

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readboolean
指定者:
接口 imageinputstream 中的 readboolean
返回:
取自流的 boolean 值。
抛出:
eofexception - 如果到达流末尾。
ioexception - 如果发生 i/o 错误。

readbyte

public byte readbyte()   throws ioexception
从接口 imageinputstream 复制的描述
从流中读取一个字节,并以 byte 值的形式返回该字节。0x000x7f 之间的字节值表示 0127 之间的整数值。0x800xff 之间的字节值表示 -128-1 之间的负整数值。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readbyte
指定者:
接口 imageinputstream 中的 readbyte
返回:
取自流的单个字节值。
抛出:
eofexception - 如果到达流末尾。
ioexception - 如果发生 i/o 错误。

readunsignedbyte

public int readunsignedbyte()     throws ioexception
从接口 imageinputstream 复制的描述
从流中读取一个字节,将其转换为 int(概念上),使用 0xff 屏蔽以便去掉所有符号扩展位,然后以 byte 值的形式返回。

于是,0x000x7f 之间的字节值便作为 0127 之间的整数值返回。0x800xff 之间的字节值通常表示为负的 byte 值,它们将被映射成 128255 之间的正整数。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readunsignedbyte
指定者:
接口 imageinputstream 中的 readunsignedbyte
返回:
取自流的无符号 byte 值。
抛出:
eofexception - 如果到达流末尾。
ioexception - 如果发生 i/o 错误。

readshort

public short readshort()    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取两个字节,根据当前字节顺序将其连接(概念上),然后以 short 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readshort
指定者:
接口 imageinputstream 中的 readshort
返回:
取自流的有符号 short 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readunsignedshort

public int readunsignedshort()     throws ioexception
从接口 imageinputstream 复制的描述
从流中读取两个字节,根据当前字节顺序将其连接(概念上),将得到的值转换为 int,使用 0xffff 屏蔽以便去掉所有符号扩展位,然后以无符号 int 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readunsignedshort
指定者:
接口 imageinputstream 中的 readunsignedshort
返回:
取自流的无符号 short 值(int 形式)。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readchar

public char readchar()   throws ioexception
从接口 imageinputstream 复制的描述
readunsignedshort 等效,唯一<wéi yī>的不同在于它的结果使用 char 数据类型返回。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readchar
指定者:
接口 imageinputstream 中的 readchar
返回:
取自流的无符号 char 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.readunsignedshort()

readint
这个艰险的救援任务发生在9月初,史云生发现黑白狗困在桥下2天还无法<to be>脱身,便向动保处通报
这项研究有助于解开某些长久的疑问,像是南太平洋各地的动植物是如何<how>迁徙和演化的?由于<yóu yú>考古证明<zhèng míng>了部分海床过去曾是陆地或浅海,这意味着在远古时期,动植物是可以自由移动和繁衍的,
昨日,女大生在行天宫附近的小七买早餐,挑选完结帐后,她就拿着饭?a及饮料,到座位区旁的自助微波炉加热,并随手按了30秒,等时间一到,她迫不及待地伸手去拿冒着烟的饭?a,
吴圣宇指出,等到10日东风较为减弱,降雨相对缓和,但是<dàn shì>后面又会有新的东风低压波动靠近,下周的天气将持续不稳定,西半部相对仍是多云到晴的天气,温度也持续闷热,想出游待在西半部比较不会受到天气影响
,只要拍摄一张以银族为题的人物好照片,就有机会<offer>得到奖金最高5万元,活动总奖金更高达20万元
上传一则影片,内容分享5招柚子皮实用招,不仅<not only>除臭消异味,还能在泡澡时加入,使你身心放,如此多妙用也让看完的网友忍不住直呼

public int readint()  throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),然后以 int 值的形式返回结果。

忽略流中的位偏移量,将其视为 0。

指定者:
接口 datainput 中的 readint
指定者:
接口 imageinputstream 中的 readint
返回:
取自流的有符号 int 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readunsignedint

public long readunsignedint()     throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),将得到的值转换为 long,使用 0xffffffffl 屏蔽以便去掉所有符号扩展位,然后以无符号 long 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readunsignedint
返回:
取自流的无符号 int 值(long 形式)。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readlong

public long readlong()   throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 8 个字节,根据当前字节顺序将其连接(概念上),然后以 long 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readlong
指定者:
接口 imageinputstream 中的 readlong
返回:
取自流的有符号 long 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readfloat

public float readfloat()    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 4 个字节,根据当前字节顺序将其连接(概念上),然后以 float 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readfloat
指定者:
接口 imageinputstream 中的 readfloat
返回:
取自流的 float 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readdouble

public double readdouble()   throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 8 个字节,根据当前字节顺序将其连接(概念上),然后以 double 值的形式返回结果。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readdouble
指定者:
接口 imageinputstream 中的 readdouble
返回:
取自流的 double 值。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbyteorder()

readline

public string readline()    throws ioexception
从接口 imageinputstream 复制的描述
从输入流中读取文本的下一行。该方法读取连续的字节,将每个字节分别转换成一个字符,直到遇到行结尾符或文件结束<End>标记;然后以 string 形式返回读取的字符。注意<危险信号>,因为此方法处理字符,所以它不支持<zhī chí>整个 unicode 字符集的输入。

如果在一个字节都没有读取的时候<When>就遇到文件结束标记,则返回 null。否则,通过左侧补 0 将读取的每个字节转换成 char 类型的值。如果遇到字符 '\n',则丢弃它并且停止读取。如果遇到字符 '\r',则丢弃它;如果它后面的那个字节转变成字符 '\n',则同样丢弃它,并且停止读取。如果在遇到字符 '\n''\r' 之一前遇到文件结束标记,则停止读取。一旦已停止读取,则返回一个 string,它按顺序包含所有已读取且未丢弃的字符。注意<危险信号>,此字符串中的每个字符的值都将小于 \u0100(即 (char)256)的值。

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readline
指定者:
接口 imageinputstream 中的 readline
返回:
一个 string,它包含取自流的一行文本。
抛出:
ioexception - 如果发生 i/o 错误。

readutf

public string readutf()    throws ioexception
从接口 imageinputstream 复制的描述
读入一个已使用 gbk 修改版格式编码的字符串。readutf 的常规协定是:该方法读取使用 gbk 修改版格式编码的 unicode 字符串的表示形式;然后以 string 的形式返回此字符串。

首先,读取两个字节并按 readunsignedshort 方法的方式使用这两个字节构造一个无符号 16 位整数,使用的是网络字节顺序(无论当前设置的是哪种字节顺序)。该整数值被称为 utf 长度,它指定要读取的额外字节数。然后成组地将这些字节转换为字符。每组的长度根据该组第一个字节的值计算。紧跟在某个组后面的字节(如果有)是下一组的第一个字节。

如果组的第一个字节与位模式 0xxxxxxx(其中 x 表示“可能为 01”)匹配,则该组只有这一个字节。该字节被左侧补 0,转换成一个字符。

如果组的第一个字节与位模式 110xxxxx 匹配,则该组只由字节 a 和另一个字节 b 组成。如果没有字节 b(因为字节 a 是要读取的最后一个字节),或者字节 b 与位模式 10xxxxxx 不匹配,则抛出 utfdataformatexception。否则,将该组转换成字符:

 (char)(((a& 0x1f) << 6) | (b & 0x3f)) 
如果组的第一个字节与位模式 1110xxxx 匹配,则该组由字节 a 和另外两个字节 bc 组成。如果没有字节 c(因为字节 a 是要读取的最后两个字节之一),或者字节 b 或字节 c 与位模式 10xxxxxx 不匹配,则抛出 utfdataformatexception。否则,将该组转换成字符:

 (char)(((a & 0x0f) << 12) | ((b & 0x3f) << 6) | (c & 0x3f)) 
如果组的第一个字节与模式 1111xxxx 或模式 10xxxxxx 匹配,则抛出 utfdataformatexception

如果在整个执行过程中的任意时间遇到文件结束标记,则抛出 eofexception

在通过此过程将每个组转换成字符后,按照从输入流中读取相应组的顺序,将这些字符收集在一起<stay><yī qǐ>,形成<xíng chéng><xíng chéng>一个 string,然后该字符串将被返回。

忽略当前设置的字节顺序。

在进行读取前,流中的位偏移量被重置为 0。

注:在使用标准 gbk 图像格式的实现中不应该使用此方法,因为此处使用的 gbk 修改版与标准 gbk 不兼容。

指定者:
接口 datainput 中的 readutf
指定者:
接口 imageinputstream 中的 readutf
返回:
从流中读取的 string。
抛出:
eofexception - 如果此流在读取所有字节之前到达末尾。
utfdataformatexception - 如果这些字节不表示一个有效的、gbk 修改版编码的字符串。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(byte[] b,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 len 个字节,并将其存储到 b 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readfully
指定者:
接口 imageinputstream 中的 readfully
参数:
b - 用来接收写入的 byte 数组。
off - 向 b 进行写入的开始位置。
len - 要读取的最大 byte 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(byte[] b)    throws ioexception
从接口 imageinputstream 复制的描述
从流中读取 b.length 个字节,并将其存储到 b 中(从索引 0 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 datainput 中的 readfully
指定者:
接口 imageinputstream 中的 readfully
参数:
b - 一个 byte 数组。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(short[] s,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 short(有符号 16 位整数),并将其存储到 s 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
s - 用来接收写入的 short 数组。
off - 向 s 进行写入的开始位置。
len - 要读取的最大 short 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(char[] c,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 char(无符号 16 位整数),并将其存储到 c 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
c - 用来接收写入的 char 数组。
off - 向 c 进行写入的开始位置。
len - 要读取的最大 char 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(int[] i,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 int(有符号 32 位整数),并将其存储到 i 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
i - 用来接收写入的 int 数组。
off - 向 i 进行写入的开始位置。
len - 要读取的最大 int 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(long[] l,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 long(有符号 64 位整数),并将其存储到 l 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
l - 用来接收写入的 long 数组。
off - 向 l 进行写入的开始位置。
len - 要读取的最大 long 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(float[] f,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 float(32 位 ieee 单精度浮点值),并将其存储到 f 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
f - 用来接收写入的 float 数组。
off - 向 f 进行写入的开始位置。
len - 要读取的最大 float 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。

readfully

public void readfully(double[] d,     int off,     int len)    throws ioexception
从接口 imageinputstream 复制的描述
根据当前字节顺序从流中读取 len 个 double(64 位 ieee 双精度浮点值),并将其存储到 d 中(从索引 off 开始)。如果到达流末尾,则将抛出 eofexception

在进行读取前,流中的位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 readfully
参数:
d - 用来接收写入的 double 数组。
off - 向 d 进行写入的开始位置。
len - 要读取的最大 double 数。
抛出:
eofexception - 如果该流在读取所有字节之前到达末尾。
ioexception - 如果发生 i/o 错误。
js随机数

getstreamposition

public long getstreamposition()    throws ioexception
从接口 imageinputstream 复制的描述
返回流的当前字节位置。下一次读取将从此偏移量开始。

指定者:
接口 imageinputstream 中的 getstreamposition
返回:
一个包含流位置 long 值。
抛出:
ioexception - 如果发生 i/o 错误。

getbitoffset

public int getbitoffset()   throws ioexception
从接口 imageinputstream 复制的描述
以整数的形式返回当前位偏移量,该整数在 0 到 7 之间(包含两者)。位偏移量通过调用 readbits 方法隐式地更新。值 0 表示所读取字节的最高有效位,值 7 表示所读取字节的最低有效位。

第一次打开流时位偏移量被设置为 0,以后可以通过调用 seekskipbytes、或者任何 readreadfully 方法将其重置为 0。

指定者:
接口 imageinputstream 中的 getbitoffset
返回:
一个 int,包含 0 到 7 之间(包含两者)的位偏移量。
抛出:
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.setbitoffset(int)

setbitoffset

public void setbitoffset(int bitoffset)   throws ioexception
从接口 imageinputstream 复制的描述
将位偏移量设置为 0 到 7 之间(包含两者)的整数。不改变流中由 getstreamposition 返回的位偏移量。值 0 表示所读取字节的最高有效位,值 7 表示所读取字节的最低有效位。

指定者:
接口 imageinputstream 中的 setbitoffset
参数:
bitoffset - 所需的偏移量,为 0 到 7 之间(包括<included>两者)的 int 的形式。
抛出:
ioexception - 如果发生 i/o 错误。
另请参见:
imageinputstream.getbitoffset()

readbit

public int readbit()  throws ioexception
从接口 imageinputstream 复制的描述
从流中读取单个字节,并以 int01)的形式返回该字节。位偏移量将加 1,模数将减 8。

指定者:
接口 imageinputstream 中的 readbit
返回:
一个 int,包含 01网站地图 手机端
抛出:
eofexception - 如果该流在读取所有位之前到达末尾。
ioexception - 如果发生 i/o 错误。

readbits

public long readbits(int numbits)   throws ioexception
从接口 imageinputstream 复制的描述
从流中读取位串 (bitstring) 并以 long 的形式返回,使第一个读取的位成为<Become>输出的最高有效位。在 getstreamposition 指示的字节中从 getbitoffset 给定的位开始读取。位偏移量将增加 numbits,模数将减 8。

流的字节顺序对此方法没有任何影响。此方法返回值的构造方式相当于每次读取一个位,然后将其移到返回值的右边。如以下伪代码所示:

 long accum=0l; for (int i=0; i < numbits; i++) {  accum <<=1; // shift left one bit to make room  accum |=readbit(); } 
注意,如果使用了与网络字节顺序相反的顺序(即 getbyteorder()==false),那么 readbits(32) 的结果可能因此<therefore>而不等于 readint() 的结果。

如果在读取了所有位前遇到流末尾,则抛出 eofexception

指定者:
接口 imageinputstream 中的 readbits
参数:
numbits - 要读取的位数,为 0 到 64 之间(包含两者)的 int 形式。
返回:
long 形式的位串,最后读取的位存储在最低有效位中。
抛出:
eofexception - 如果该流在读取所有位之前到达末尾。
ioexception - 如果发生 i/o 错误。

length

public long length()
返回 -1l,指示流的长度未知。子类必须重写此方法来提供实际的长度信息。

指定者:
接口 imageinputstream 中的 length
返回:
指示不知道<knew>长度的 -1l。

skipbytes

public int skipbytes(int n)   throws ioexception
通过调用 seek(getstreamposition() + n) 推进当前流位置。

位偏移量被重置为 0。

指定者:
接口 datainput 中的 skipbytes
指定者:
接口 imageinputstream 中的 skipbytes
参数:
n - 要逆向查找的字节数。
返回:
一个 int,表示跳过的字节数。
抛出:
ioexception - 如果 getstreamposition 计算起始或结束位置时抛出 ioexception

skipbytes

public long skipbytes(long n)    throws ioexception
通过调用 seek(getstreamposition() + n) 推进当前流位置。

位偏移量被重置为 0。

指定者:
接口 imageinputstream 中的 skipbytes
参数:
n - 要逆向查找的字节数。
返回:
一个 long,表示跳过的字节数。
抛出:
ioexception - 如果 getstreamposition 计算起始或结束位置时抛出 ioexception

seek

public void seek(long pos)   throws ioexception
从接口 imageinputstream 复制的描述
将当前流位置设置为所需的位置。下一次读取将在此位置上进行。位偏移量被设置为 0。

如果 pos 小于刷新位置(由 getflushedposition 返回),那么将抛出 indexoutofboundsexception

查找文件结束标记的后面是合法的,只有在该处执行读取时才抛出 eofexception

指定者:
接口 imageinputstream 中的 seek
参数:
pos - 一个 long,它包含所需的文件指针位置。
抛出:
ioexception - 如果发生任何 i/o 错误。

mark

public void mark()
将当前流位置推进到标记位置的堆栈上。

指定者:
接口 imageinputstream 中的 mark

reset

public void reset()  throws ioexception
根据标记的堆栈重置当前流字节和位位置。

如果以前的标记位置位于流的丢弃部分,则抛出 ioexception

指定者:
接口 imageinputstream 中的 reset
抛出:
ioexception - 如果发生 i/o 错误。

flushbefore

public void flushbefore(long pos)   throws ioexception
从接口 imageinputstream 复制的描述
丢弃所指示位置之前的流初始部分。试图查找流的刷新部分中的偏移量将导致抛出 indexoutofboundsexception

调用 flushbefore 可允许<allow>实现此接口的类释放存储流中的数据所使用的资源,如内存和磁盘空间。

指定者:
接口 imageinputstream 中的 flushbefore
参数:
pos - 一个 long,它包含要刷新的流前缀的长度。
抛出:
ioexception - 如果发生 i/o 错误。

flush

public void flush()  throws ioexception
从接口 imageinputstream 复制的描述
丢弃当前流位置之前的流初始部分。等效于 flushbefore(getstreamposition())

指定者:
接口 imageinputstream 中的 flush
抛出:
ioexception - 如果发生 i/o 错误。

getflushedposition

public long getflushedposition()
从接口 imageinputstream 复制的描述
返回流中可以执行查找的最早位置。返回值将是所有传入 flushbefore 上一次调用的值中的最大值。

指定者:
接口 imageinputstream 中的 getflushedposition
返回:
用于查找的最早的合法位置(long 形式)。

iscached

public boolean iscached()
默认实现返回 false。如果子类缓存数据,则其应该重写此方法。

指定者:
接口 imageinputstream 中的 iscached
返回:
如果此 imageinputstream 缓存数据,则返回 true
另请参见:
imageinputstream.iscachedmemory(),imageinputstream.iscachedfile()

iscachedmemory

public boolean iscachedmemory()
默认实现返回 false。如果子类在主存中缓存数据,则其应该重写此方法。

指定者:
接口 imageinputstream 中的 iscachedmemory
返回:
如果此 imageinputstream 在主存中缓存数据,则返回 true
另请参见:
imageinputstream.iscached(),imageinputstream.iscachedfile()

iscachedfile

public boolean iscachedfile()
默认实现返回 false。如果子类在临时文件中缓存数据,则其应该重写此方法。

指定者:
接口 imageinputstream 中的 iscachedfile
返回:
如果此 imageinputstream 在临时文件中缓存数据,则返回 true
另请参见:
imageinputstream.iscached(),imageinputstream.iscachedmemory()

close

public void close()  throws ioexception
从接口 imageinputstream 复制的描述
关闭流。试图访问<fǎng wèn>已经关闭的流将导致 ioexception 或错误行为。调用此方法可允许实现此接口的类释放与流关联的资源,如内存、磁盘空间或文件描述符。

指定者:
接口 imageinputstream 中的 close
抛出:
ioexception - 如果发生 i/o 错误。

finalize

protected void finalize()   throws throwable
在垃圾回收前结束此对象。调用 close 方法来关闭所有开启的输入源。不应该从应用程序代码调用此方法。

覆盖:
object 中的 finalize
抛出:
throwable - 如果在超类终止过程中发生错误。

javatm platform
standard ed. 6

提交错误或意见<remark>
有关更多的 api 参考资料和开发<kāi fā>人员文档,请参阅 java se 开发<kāi fā>人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作<work>代码示例。

版权所有 2007 sun microsystems, inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策