ใช้รหัสด้านล่างเพื่อบันทึกภาพไปยังไดเรกทอรีภายใน
private String saveToInternalStorage(Bitmap bitmapImage){
ContextWrapper cw = new ContextWrapper(getApplicationContext());
// path to /data/data/yourapp/app_data/imageDir
File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
// Create imageDir
File mypath=new File(directory,"profile.jpg");
FileOutputStream fos = null;
try {
fos = new FileOutputStream(mypath);
// Use the compress method on the BitMap object to write image to the OutputStream
bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fos);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return directory.getAbsolutePath();
}
คำอธิบาย:
1. ไดเรกทอรีจะถูกสร้างขึ้นด้วยชื่อที่กำหนด Javadocs ใช้สำหรับบอกตำแหน่งที่จะสร้างไดเรกทอรี
2. คุณจะต้องให้ชื่อภาพที่คุณต้องการบันทึก
หากต้องการอ่านไฟล์จากหน่วยความจำภายใน ใช้รหัสด้านล่าง
private void loadImageFromStorage(String path)
{
try {
File f=new File(path, "profile.jpg");
Bitmap b = BitmapFactory.decodeStream(new FileInputStream(f));
ImageView img=(ImageView)findViewById(R.id.imgPicker);
img.setImageBitmap(b);
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
}
/data/data/yourapp/app_data/imageDir
กันแน่? stackoverflow.com/questions/40323126/...