猿问

Android将创建的位图保存到SD卡上的目录

我创建了一个位图,现在我想将该位图保存到某个目录中。谁能告诉我这是怎么做的。谢谢


FileInputStream in;

          BufferedInputStream buf;

           try {

                  in = new FileInputStream("/mnt/sdcard/dcim/Camera/2010-11-16_18-57-18_989.jpg");

                  buf = new BufferedInputStream(in);

                  Bitmap _bitmapPreScale = BitmapFactory.decodeStream(buf);

                  int oldWidth = _bitmapPreScale.getWidth();

                  int oldHeight = _bitmapPreScale.getHeight();

                  int newWidth = 2592; 

                  int newHeight = 1936;


                  float scaleWidth = ((float) newWidth) / oldWidth;

                  float scaleHeight = ((float) newHeight) / oldHeight;


                  Matrix matrix = new Matrix();

               // resize the bit map

                  matrix.postScale(scaleWidth, scaleHeight);

                  Bitmap _bitmapScaled = Bitmap.createBitmap(_bitmapPreScale, 0, 0,  oldWidth, oldHeight, matrix, true);

(我想将_bitmapScaled保存到SD卡上的文件夹中)


POPMUISE
浏览 334回答 3
3回答

Helenr

嗨,您可以将数据写入字节,然后在sdcard文件夹中创建一个具有所需名称和扩展名的文件,然后将字节写入该文件。这会将位图保存到sdcard。ByteArrayOutputStream bytes = new ByteArrayOutputStream();_bitmapScaled.compress(Bitmap.CompressFormat.JPEG, 40, bytes);//you can create a new file name "test.jpg" in sdcard folder.File f = new File(Environment.getExternalStorageDirectory()                        + File.separator + "test.jpg");f.createNewFile();//write the bytes in fileFileOutputStream fo = new FileOutputStream(f);fo.write(bytes.toByteArray());// remember close de FileOutputfo.close();

holdtom

您也可以尝试一下。  OutputStream fOut = null;                        File file = new File(strDirectoy,imgname);                            fOut = new FileOutputStream(file);                        bitmap.compress(Bitmap.CompressFormat.JPEG, 85, fOut);                            fOut.flush();                            fOut.close();                MediaStore.Images.Media.insertImage(getContentResolver(),file.getAbsolutePath(),file.getName(),file.getName());
随时随地看视频慕课网APP

相关分类

Android
我要回答