當從InputStream中讀取數據時,是否有一種方法可以在讀取達到一定大小時取消讀取,並安全地忽略流的其餘部分以確保資源完全釋放?如何安全取消InputStream讀取?
到目前爲止,我剛剛完成閱讀,但理想情況下,我想停止閱讀並繼續前進。我如何安全地做到這一點?
這是我到目前爲止有:
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int nRead;
byte[] byteData = new byte[16384];
while ((nRead = inputStream.read(byteData, 0, byteData.length)) != -1){
if(buffer.size() <= MAX_FILE_SIZE){
buffer.write(byteData, 0, nRead);
}
}
if(buffer.size() <= MAX_FILE_SIZE){
buffer.flush();
mData = buffer.toByteArray();
}
inputStream.close();
感謝
非常有幫助,謝謝。 – cottonBallPaws 2011-02-14 09:12:41