java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
javax.imageio.stream.MemoryCacheImageInputStream
- 所有已实现的接口:
-
Closeable,DataInput,AutoCloseable,ImageInputStream
从常规
InputStream获取输入的ImageInputStream实现。使用内存缓冲区来缓存丢弃位置和当前读取位置之间的数据。
一般来说,当从常规InputStream读取时,最好使用FileCacheImageInputStream。提供此类是为了在无法创建可写临时文件的情况下使用。
-
Field Summary
Fields declared in class javax.imageio.stream.ImageInputStreamImpl
bitOffset, byteOrder, flushedPos, streamPos -
Constructor Summary
ConstructorsConstructorDescription构造一个将从给定InputStream读取的MemoryCacheImageInputStream。 -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()关闭此MemoryCacheImageInputStream,释放缓存。protected voidfinalize()已弃用,将被移除: 该API元素可能在将来的版本中被移除。终结已被标记为将被移除。booleanisCached()返回true,因为此ImageInputStream缓存数据以允许向后查找。boolean返回false,因为此ImageInputStream不维护文件缓存。boolean返回true,因为此ImageInputStream维护主内存缓存。intread()从流中读取一个字节并将其作为介于0和255之间的int返回。intread(byte[] b, int off, int len) 从流中读取最多len字节,并将它们存储到从索引off开始的b中。Methods declared in class javax.imageio.stream.ImageInputStreamImpl
checkClosed, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, length, mark, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, seek, setBitOffset, setByteOrder, skipBytes, skipBytes
-
Constructor Details
-
MemoryCacheImageInputStream
构造一个将从给定InputStream读取的MemoryCacheImageInputStream。- 参数:
-
stream- 用于读取的InputStream。 - 抛出:
-
IllegalArgumentException- 如果stream为null。
-
-
Method Details
-
read
从类中复制的描述:ImageInputStreamImpl从流中读取一个字节并将其作为介于0和255之间的int返回。如果达到EOF,将返回-1。子类必须为此方法提供实现。子类实现应在退出前更新流位置。
在读取发生之前,流中的位偏移必须重置为零。
- 指定者:
-
read在接口中ImageInputStream - 指定者:
-
read在类中ImageInputStreamImpl - 返回:
-
流中下一个字节的值,如果达到EOF,则返回
-1。 - 抛出:
-
IOException- 如果流已关闭。
-
read
从类中复制的描述:ImageInputStreamImpl从流中读取最多len字节,并将它们存储到从索引off开始的b中。如果由于已到达流的末尾而无法读取任何字节,则返回-1。在读取发生之前,流中的位偏移必须重置为零。
子类必须为此方法提供实现。子类实现应在退出前更新流位置。
- 指定者:
-
read在接口中ImageInputStream - 指定者:
-
read在类中ImageInputStreamImpl - 参数:
-
b- 要写入的字节数组。 -
off- 要写入的b中的起始位置。 -
len- 要读取的最大字节数。 - 返回:
-
实际读取的字节数,或
-1表示EOF。 - 抛出:
-
IOException- 如果发生I/O错误。
-
isCached
public boolean isCached()返回true,因为此ImageInputStream缓存数据以允许向后查找。- 指定者:
-
isCached在接口中ImageInputStream - 覆盖:
-
isCached在类中ImageInputStreamImpl - 返回:
-
true。 - 参见:
-
isCachedFile
public boolean isCachedFile()返回false,因为此ImageInputStream不维护文件缓存。- 指定者:
-
isCachedFile在接口中ImageInputStream - 覆盖:
-
isCachedFile在类中ImageInputStreamImpl - 返回:
-
false。 - 参见:
-
isCachedMemory
public boolean isCachedMemory()返回true,因为此ImageInputStream维护主内存缓存。- 指定者:
-
isCachedMemory在接口中ImageInputStream - 覆盖:
-
isCachedMemory在类中ImageInputStreamImpl - 返回:
-
true。 - 参见:
-
close
关闭此MemoryCacheImageInputStream,释放缓存。源InputStream不会被关闭。- 抛出:
-
IOException- 如果发生I/O错误。
-
finalize
Deprecated, for removal: This API element is subject to removal in a future version.Finalization has been deprecated for removal. SeeObject.finalize()for background information and details about migration options.在垃圾回收之前对此对象进行终结。将调用close方法来关闭任何打开的输入源。此方法不应该从应用程序代码中调用。- 覆盖:
-
finalize在类中ImageInputStreamImpl - 抛出:
-
Throwable- 如果在超类终结期间发生错误。 - 参见:
-