Newb问题;
我的内存中有一个位图;
Private Bitmap MyPicture;
然后,我从相机的成像仪填充MyPicture。我需要使用来自apache commons的FTP客户端上传该照片。
fcon.storeFile("filename", new BufferedInputStream(MyPicture.????));
但是apache想要一个BufferedInputStream。如何将内存位图转换为内存流?
谢谢你们!
答案 0 :(得分:14)
这就是我要找的东西;
ByteArrayOutputStream stream = new ByteArrayOutputStream();
si.Image.compress(CompressFormat.JPEG, 100, stream);
InputStream is = new ByteArrayInputStream(stream.toByteArray());
最后一行是缺失的链接......
答案 1 :(得分:0)
将位图转换为字节数组非常简单:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
MyPicture.compress(Bitmap.CompressFormat.PNG, 100, baos);
baos.toByteArray();
然后你可以创建一个BufferedInputStream
来将字节写入你的文件。