- java.lang.Object
-
- javax.imageio.stream.ImageInputStreamImpl
-
- javax.imageio.stream.ImageOutputStreamImpl
-
- javax.imageio.stream.FileCacheImageOutputStream
-
- 实现的所有接口
-
Closeable
,DataInput
,DataOutput
,AutoCloseable
,ImageInputStream
,ImageOutputStream
public class FileCacheImageOutputStream extends ImageOutputStreamImpl
ImageOutputStream
的实现,将其输出写入常规OutputStream
。 文件用于缓存数据,直到将其刷新到输出流。
-
-
字段汇总
-
声明的属性在类 javax.imageio.stream.ImageInputStreamImpl
bitOffset, byteOrder, flushedPos, streamPos
-
-
构造方法摘要
构造方法 构造器 描述 FileCacheImageOutputStream(OutputStream stream, File cacheDir)
构造一个FileCacheImageOutputStream
,它将写入给定的outputStream
。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 void
close()
关闭这个FileCacheImageOutputStream
。boolean
isCached()
返回true
因为此ImageOutputStream
缓存数据以便允许向后搜索。boolean
isCachedFile()
返回true
因为此ImageOutputStream
维护文件缓存。boolean
isCachedMemory()
返回false
因为此ImageOutputStream
不维护主内存缓存。void
seek(long pos)
设置当前流位置并将位偏移重置为0。-
声明方法的类 javax.imageio.stream.ImageOutputStreamImpl
flushBits
-
声明方法的类 javax.imageio.stream.ImageInputStreamImpl
checkClosed, finalize, length, mark, read, read, read, reset, skipBytes, skipBytes
-
声明方法的类 java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
声明方法的接口 javax.imageio.stream.ImageInputStream
flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, length, mark, read, read, 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, setBitOffset, setByteOrder, skipBytes, skipBytes
-
声明方法的接口 javax.imageio.stream.ImageOutputStream
flushBefore, write, write, write, writeBit, writeBits, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeChars, writeDouble, writeDoubles, writeFloat, writeFloats, writeInt, writeInts, writeLong, writeLongs, writeShort, writeShorts, writeUTF
-
-
-
-
构造方法详细信息
-
FileCacheImageOutputStream
public FileCacheImageOutputStream(OutputStream stream, File cacheDir) throws IOException
构造一个FileCacheImageOutputStream
,它将写入给定的outputStream
。临时文件用作缓存。 如果
cacheDir
是非null
并且是目录,则将在此处创建该文件。 如果是null
,将使用系统相关的默认临时文件目录(有关详细信息,请参阅File.createTempFile
的文档)。- 参数
-
stream
- 要写入的OutputStream
。 -
cacheDir
-一个File
表明,其中的缓存文件应该被创建,或null
使用系统目录下。 - 异常
-
IllegalArgumentException
- 如果stream
是null
。 -
IllegalArgumentException
- 如果cacheDir
是非null
但不是目录。 -
IOException
- 如果无法创建缓存文件。
-
-
方法详细信息
-
seek
public void seek(long pos) throws IOException
设置当前流位置并将位偏移重置为0.寻找超过文件末尾是合法的; 只有执行读取时才会抛出EOFException
。 在执行写入之前,文件长度不会增加。- 参数
-
pos
- 包含所需文件指针位置的long
。 - 异常
-
IndexOutOfBoundsException
- 如果pos
小于刷新位置。 -
IOException
- 如果发生任何其他I / O错误。
-
isCached
public boolean isCached()
返回true
因为此ImageOutputStream
缓存数据以便允许向后搜索。- Specified by:
-
isCached
在接口ImageInputStream
- 重写:
-
isCached
类ImageInputStreamImpl
- 结果
-
true
。 - 另请参见:
-
isCachedMemory()
,isCachedFile()
-
isCachedFile
public boolean isCachedFile()
返回true
因为此ImageOutputStream
维护文件缓存。- Specified by:
-
isCachedFile
在接口ImageInputStream
- 重写:
-
isCachedFile
类ImageInputStreamImpl
- 结果
-
true
- 另请参见:
-
isCached()
,isCachedMemory()
-
isCachedMemory
public boolean isCachedMemory()
返回false
因为此ImageOutputStream
不维护主内存缓存。- Specified by:
-
isCachedMemory
在界面ImageInputStream
- 重写:
-
isCachedMemory
类ImageInputStreamImpl
- 结果
-
false
。 - 另请参见:
-
isCached()
,isCachedFile()
-
close
public void close() throws IOException
关闭这个FileCacheImageOutputStream
。 将所有挂起的数据刷新到输出,并关闭并删除缓存文件。 目的地OutputStream
尚未关闭。- 异常
-
IOException
- 如果发生错误。
-
-