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