|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.imageio.stream.ImageInputStreamImpl javax.imageio.stream.ImageOutputStreamImpl javax.imageio.stream.FileCacheImageOutputStream
public class FileCacheImageOutputStream
將輸出寫入常規 OutputStream
中的 ImageOutputStream
的實作。在將資料刷新到輸出串流前用於快取記憶體資料的檔案。
欄位摘要 |
---|
從類別 javax.imageio.stream.ImageInputStreamImpl 繼承的欄位 |
---|
bitOffset, byteOrder, flushedPos, streamPos |
建構子摘要 | |
---|---|
FileCacheImageOutputStream(OutputStream stream,
File cacheDir)
建構一個將向給定 outputStream 進行寫入的 FileCacheImageOutputStream 。 |
方法摘要 | |
---|---|
void |
close()
關閉此 FileCacheImageOututStream 。 |
void |
flushBefore(long pos)
丟棄所指示位置之前的串流初始部分。 |
boolean |
isCached()
返回 true ,因為此 ImageOutputStream 為了允許逆向尋找而快取記憶體了資料。 |
boolean |
isCachedFile()
返回 true ,因為此 ImageOutputStream 維護檔案快取記憶體。 |
boolean |
isCachedMemory()
返回 false ,因為此 ImageOutputStream 不維護主存快取記憶體。 |
long |
length()
返回 -1L ,指示串流的長度未知。 |
int |
read()
從串流中讀取單個位元組,並以 int (0 到 255 之間)形式返回該位元組。 |
int |
read(byte[] b,
int off,
int len)
從串流中讀取至多 len 個位元組,並將其存儲到 b 中(從 off 索引處開始)。 |
void |
seek(long pos)
設置當前串流位置並將位偏移量重置為 0。 |
void |
write(byte[] b,
int off,
int len)
將位元組序列寫入到串流中的當前位置。 |
void |
write(int b)
將單個位元組寫入到串流中的當前位置。 |
從類別 javax.imageio.stream.ImageOutputStreamImpl 繼承的方法 |
---|
flushBits, write, writeBit, writeBits, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeChars, writeDouble, writeDoubles, writeFloat, writeFloats, writeInt, writeInts, writeLong, writeLongs, writeShort, writeShorts, writeUTF |
從類別 javax.imageio.stream.ImageInputStreamImpl 繼承的方法 |
---|
checkClosed, finalize, flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, 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, setBitOffset, setByteOrder, skipBytes, skipBytes |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
從介面 javax.imageio.stream.ImageInputStream 繼承的方法 |
---|
flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, 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, setBitOffset, setByteOrder, skipBytes, skipBytes |
建構子詳細資訊 |
---|
public FileCacheImageOutputStream(OutputStream stream, File cacheDir) throws IOException
outputStream
進行寫入的 FileCacheImageOutputStream
。
將臨時檔案用作快取記憶體。如果 cacheDir
不為 null
且是一個目錄,則在該處創建檔案。如果為 null
,則將使用與系統相關的預設臨時檔案目錄(有關詳細資料,請參閱 File.createTempFile
的文檔)。
stream
- 將寫入到的 OutputStream
。cacheDir
- 一個指示快取記憶體檔案創建目錄的 File
;或 null
,指示使用系統目錄。
IllegalArgumentException
- 如果 stream
為 null
。
IllegalArgumentException
- 如果 cacheDir
不為 null
但不是一個目錄。
IOException
- 如果無法創建快取記憶體檔案。方法詳細資訊 |
---|
public int read() throws IOException
ImageInputStreamImpl
複製的描述int
(0 到 255 之間)形式返回該位元組。 如果到達 EOF,則返回 -1
。
子類別必須提供此方法的實作。子類別實作在退出前應該更新串流位置。
在發生讀取前,串流中的位偏移量必須被重置為 0。
ImageInputStream
中的 read
ImageInputStreamImpl
中的 read
-1
。
IOException
- 如果串流已經被關閉。public int read(byte[] b, int off, int len) throws IOException
ImageInputStreamImpl
複製的描述len
個位元組,並將其存儲到 b
中(從 off
索引處開始)。如果由於到達串流末尾而沒有讀取任何位元組,則返回 -1
。
在發生讀取前,串流中的位偏移量必須被重置為 0。
子類別必須提供此方法的實作。子類別實作在退出前應該更新串流位置。
ImageInputStream
中的 read
ImageInputStreamImpl
中的 read
b
- 用來接收寫入的位元組陣列。off
- b
中要寫入的起始位置。len
- 要讀取的最大位元組數。
-1
,指示 EOF。
IOException
- 如果發生 I/O 錯誤。public void write(int b) throws IOException
ImageOutputStream
複製的描述b
的 24 個高位將被忽略。
如果串流中的位偏移量不為零,則首先將當前位元組的余項用 0 填充並將其寫出。寫出後位偏移量將為 0。實作方可使用
的 ImageOutputStreamImpl
方法來保證這一點。
flushBits
DataOutput
中的 write
ImageOutputStream
中的 write
ImageOutputStreamImpl
中的 write
b
- 一個 int
,其低 8 位將被寫入。
IOException
- 如果發生 I/O 錯誤。public void write(byte[] b, int off, int len) throws IOException
ImageOutputStream
複製的描述len
為 0,則不寫入任何位元組。首先寫入位元組 b[off]
,然後寫入位元組 b[off + 1]
,依此類別推。
如果串流中的位偏移量不為零,則首先將當前位元組的余項用 0 填充並將其寫出。寫出後位偏移量將為 0。實作方可使用
的 ImageOutputStreamImpl
方法來保證這一點。
flushBits
DataOutput
中的 write
ImageOutputStream
中的 write
ImageOutputStreamImpl
中的 write
b
- 要寫入的 byte
陣列。off
- 資料中的初始偏移量。len
- 要寫入的 byte
數。
IOException
- 如果發生 I/O 錯誤。public long length()
ImageInputStreamImpl
複製的描述-1L
,指示串流的長度未知。子類別必須覆寫此方法來提供實際的長度資訊。
ImageInputStream
中的 length
ImageInputStreamImpl
中的 length
public void seek(long pos) throws IOException
EOFException
。在執行寫入前,檔案長度不會增加。
ImageInputStream
中的 seek
ImageInputStreamImpl
中的 seek
pos
- 一個 long
,它包含所需的檔案指針位置。
IndexOutOfBoundsException
- 如果 pos
小於刷新的位置。
IOException
- 如果發生任何其他 I/O 錯誤。public boolean isCached()
true
,因為此 ImageOutputStream
為了允許逆向尋找而快取記憶體了資料。
ImageInputStream
中的 isCached
ImageInputStreamImpl
中的 isCached
true
。isCachedMemory()
,
isCachedFile()
public boolean isCachedFile()
true
,因為此 ImageOutputStream
維護檔案快取記憶體。
ImageInputStream
中的 isCachedFile
ImageInputStreamImpl
中的 isCachedFile
true
。isCached()
,
isCachedMemory()
public boolean isCachedMemory()
false
,因為此 ImageOutputStream
不維護主存快取記憶體。
ImageInputStream
中的 isCachedMemory
ImageInputStreamImpl
中的 isCachedMemory
false
。isCached()
,
isCachedFile()
public void close() throws IOException
FileCacheImageOututStream
。所有的掛起資料都將被刷新到輸出,關閉並移除該快取記憶體。但不關閉目標 OutputStream
。
ImageInputStream
中的 close
ImageInputStreamImpl
中的 close
IOException
- if an error occurs.public void flushBefore(long pos) throws IOException
ImageInputStream
複製的描述IndexOutOfBoundsException
。
調用 flushBefore
可允許實作此介面的類別釋放存儲串流中的資料所使用的資源,如記憶體和磁碟空間。
ImageInputStream
中的 flushBefore
ImageOutputStream
中的 flushBefore
ImageInputStreamImpl
中的 flushBefore
pos
- 一個 long
,它包含要刷新的串流前綴的長度。
IOException
- 如果發生 I/O 錯誤。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。