2017-01-22 4 views
0

В моем приложении я могу сделать снимок и сохранить в галерее (папка «камера»). Но мне нужно сохранить его в определенной папке во внешней памяти. Это мой код. я могу это сделать?Сохранить изображение в определенной папке в Android-устройстве

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.get_pic); 
    init(); 


    getPic.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(intent, 0); 

     } 
    }); 

} 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (resultCode == RESULT_OK) { 

     Bundle ex = data.getExtras(); 
     bitmap = (Bitmap) ex.get("data"); 
     myPic.setImageBitmap(bitmap); 
    } 
} 

ответ

0

Это следует сделать это:

private void createDirectoryAndSaveFile(Bitmap imgSave, String fileName) { 

    File direct = new File(Environment.getExternalStorageDirectory() + "/DirName"); 

    if (!direct.exists()) { 
     File imageDirectory = new File("/sdcard/DirName/"); 
     imageDirectory.mkdirs(); 
    } 

    File file = new File(new File("/sdcard/DirName/"), fileName); 
    if (file.exists()) { 
     file.delete(); 
    } 
    try { 
     FileOutputStream out = new FileOutputStream(file); 
     imgSave.compress(Bitmap.CompressFormat.JPEG, 100, out); 
     out.flush(); 
     out.close(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 
+0

где я должен назвать это? – amardco

+0

После того, как вы приобрели изображение. Вы можете сделать это в событии с кликом, но я не знаю ваших конкретных потребностей. – Simon

+0

Если оно работает, то pls признавают ответ. – Simon