在一个安卓应用中,我正在发送从
相机Intent
拍摄的图片,所以我需要将Bitmap
转换为字节数组。为此,我使用如下的ByteArrayOutputStream
:private byte[] getRawImageData(Bitmap source) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] rawImageData = null;
try {
source.compress(CompressFormat.JPEG, DEFAULT_COMRESSION, baos);
rawImageData = baos.toByteArray();
} finally {
try {
baos.close();
} catch (IOException e) {
// handle exception here
}
}
return rawImageData;
}
一切都正常工作,真正的问题是在Javadoc和Android文档中ByteArrayOutputStream
之间的差异。
Javadoc读取:
关闭ByteArrayOutputStream没有任何效果。
Android文档读取:
关闭此流。这将释放用于此流的系统资源。
无论如何,我都会关闭流,但我想知道哪个文档是正确的,并且它们为什么不同。
close
方法时,您是否担心底层字节数组的流会发生什么? - Perception