我正在使用DataOutputStream向ByteArrayOutputStream写几个字符串,如下所示:
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
DataOutputStream dataStream = new DataOutputStream(byteStream);
dataStream.writeUTF(string1);
etc.
但是我还想在ByteArrayOutputStream中添加一个Bitmap。 是否可以首先使用DataOutputStream编写字符串,然后使用write()将位图直接写入ByteArrayOutputStream?
如何在编写后将其解压缩时知道要读取的字节数? 或者是否可以在写完字符串后将ByteArrayOutputStream传递给Bitmap.compress()?
答案 0 :(得分:0)
我不知道你为什么要这么做但是...... 在将字符串写入dataStream之后,对dataStream进行刷新,您将确定该流已准备好吃掉更多数据。接下来,您可以将位图写入byteStream。不要忘记冲洗和关闭溪流。所有操作都应该在try块中完成。将String写入dataStream后,可以通过size()方法获取当前偏移量。