Headertab

Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

Thursday, 31 March 2016

Save image in specific folder sdcard

How to save image in internal storage

Direct saveing image



private void saveImage(Bitmap imageToSave) {

    File direct = new File(Environment.getExternalStorageDirectory() + "/Samset_ps");
    Log.e("Logger", " Step 1  ");
    if (!direct.exists()) {
        File scanDoc = new File("/sdcard/Scanner_ps/");
        scanDoc.mkdirs();
        Log.e("Logger", Step 2  ");
    }
    Log.e("Logger", Step 3  ");
    String fileName = String.format("%d.jpg", System.currentTimeMillis());
    File file = new File(new File("/sdcard/Scanner_ps/"), fileName);
    Log.e("Logger", Step 4 file name "+file.toString());
    try {
        FileOutputStream out = new FileOutputStream(file);
        imageToSave.compress(Bitmap.CompressFormat.JPEG, 100, out);
        Log.e("Logger", Step 5  ");
        out.flush();
        out.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}


With Asyntask 

This is the best way save image

         // you can change input type like  byte,bitmap
private class SaveImageTask extends AsyncTask<byte[], Void, Void> {

    @Override
    protected Void doInBackground(byte[]... data) {
        FileOutputStream outStream = null;
        Log.e("Logger", " Step 1  ");
        // Write to SD Card
       
try {
            File sdCard = Environment.getExternalStorageDirectory();
            File dir = new File (sdCard.getAbsolutePath() + "/Samset_ps");
            if (!dir.exists())
            {
                dir.mkdirs();;
            }
                Log.e("Logger", Step 2  ");
                String fileName = String.format("%d.jpg", System.currentTimeMillis());
                File outFile = new File(dir, fileName);
                Log.e("Logger", Step 3  ");
                outStream = new FileOutputStream(outFile);
                outStream.write(data[0]);
                outStream.flush();
                outStream.close();

                Log.e("Logger", "onPictureTaken - wrote bytes: " + data.length + " to " +              outFile.getAbsolutePath());

                refreshGallery(outFile);

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
        }
        return null;
    }

}