public class MemoryCacheImageInputStream extends ImageInputStreamImpl
ImageInputStream
获得其输入从一个普通的
InputStream
实现。内存缓冲区用于至少缓存丢弃位置和当前读取位置之间的数据。
在一般情况下,最好使用一个FileCacheImageInputStream
阅读时从一个普通的InputStream
。这类设置的情况下,这是不可能创造一个可写入临时文件。
bitOffset, byteOrder, flushedPos, streamPos
Constructor and Description |
---|
MemoryCacheImageInputStream(InputStream stream)
构建了一个
MemoryCacheImageInputStream 将从一个给定的
InputStream 读。
|
Modifier and Type | Method and Description |
---|---|
void |
close()
关闭
MemoryCacheImageInputStream ,释放缓存。
|
protected void |
finalize()
完成这个对象的垃圾收集之前。
|
void |
flushBefore(long pos)
其流的初始部分所指示的位置之前。
|
boolean |
isCached()
返回
true 因为这
ImageInputStream 缓存数据以便寻求向后。
|
boolean |
isCachedFile()
返回
false 因为这
ImageInputStream 不保持文件缓存。
|
boolean |
isCachedMemory()
返回
true 因为这
ImageInputStream 保持内存缓存。
|
int |
read()
从流中读取一个字节并返回0和255之间的
int 。
|
int |
read(byte[] b, int off, int len)
从流中读取到
len 字节,并将它们存储到
b 从指数
off 。
|
checkClosed, flush, 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
public MemoryCacheImageInputStream(InputStream stream)
MemoryCacheImageInputStream
将从一个给定的
InputStream
读。
stream
-
InputStream
读。
null
stream
IllegalArgumentException
。
public int read() throws IOException
ImageInputStreamImpl
int
。如果达到
-1
返回EOF。
子类必须为这种方法提供一个实现。子类实现应在退出之前更新流位置。
在流中的位偏移量必须在读取发生之前重置为零。
read
接口
ImageInputStream
read
方法重写,继承类
ImageInputStreamImpl
-1
EOF。
IOException
如果流已关闭。
public int read(byte[] b, int off, int len) throws IOException
ImageInputStreamImpl
len
字节流,并将它们存储到
b
从指数
off
。如果没有字节可以读取因为已到达流的末尾,则返回
-1
。
在流中的位偏移量必须在读取发生之前重置为零。
子类必须为这种方法提供一个实现。子类实现应在退出之前更新流位置。
read
接口
ImageInputStream
read
方法重写,继承类
ImageInputStreamImpl
b
-字节被写入到数组。
off
-起始位置在
b
写。
len
-的最大字节数读。
-1
指示EOF。
IOException
如果I/O错误发生。
public void flushBefore(long pos) throws IOException
ImageInputStream
IndexOutOfBoundsException
。
打电话flushBefore
允许实现了这个接口的类来释放资源如内存或磁盘空间被用来存储数据流。
flushBefore
接口
ImageInputStream
flushBefore
方法重写,继承类
ImageInputStreamImpl
pos
-
long
含流前缀可能冲长度。
IOException
如果I/O错误发生。
public boolean isCached()
true
因为这
ImageInputStream
缓存数据以便寻求向后。
isCached
接口
ImageInputStream
isCached
方法重写,继承类
ImageInputStreamImpl
true
。
isCachedMemory()
,
isCachedFile()
public boolean isCachedFile()
false
因为这
ImageInputStream
不保持文件缓存。
isCachedFile
接口
ImageInputStream
isCachedFile
方法重写,继承类
ImageInputStreamImpl
false
。
isCached()
,
isCachedMemory()
public boolean isCachedMemory()
true
因为这
ImageInputStream
保持内存缓存。
isCachedMemory
接口
ImageInputStream
isCachedMemory
方法重写,继承类
ImageInputStreamImpl
true
。
isCached()
,
isCachedFile()
public void close() throws IOException
MemoryCacheImageInputStream
,释放缓存。源
InputStream
不是封闭的。
close
接口
Closeable
close
接口
AutoCloseable
close
接口
ImageInputStream
close
方法重写,继承类
ImageInputStreamImpl
IOException
如果I/O错误发生。
protected void finalize() throws Throwable
close
方法来关闭任何打开的输入源。此方法不应该从应用程序代码调用。
finalize
方法重写,继承类
ImageInputStreamImpl
Throwable
-如果在父类定型时发生错误。
WeakReference
,
PhantomReference
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.