這期內容當中小編將會給大家帶來有關怎么在Android中將Bitmap保存到本地,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
/**
* Bitmap 幫助類之一
*/
class BitmapUtils {
/**
* Save Bitmap
*
* @param name file name
* @param bm picture to save
*/
static void saveBitmap(String name, Bitmap bm, Context mContext) {
Log.d("Save Bitmap", "Ready to save picture");
//指定我們想要存儲文件的地址
String TargetPath = mContext.getFilesDir() + "/images/";
Log.d("Save Bitmap", "Save Path=" + TargetPath);
//判斷指定文件夾的路徑是否存在
if (!FileUtils.fileIsExist(TargetPath)) {
Log.d("Save Bitmap", "TargetPath isn't exist");
} else {
//如果指定文件夾創建成功,那么我們則需要進行圖片存儲操作
File saveFile = new File(TargetPath, name);
try {
FileOutputStream saveImgOut = new FileOutputStream(saveFile);
// compress - 壓縮的意思
bm.compress(Bitmap.CompressFormat.JPEG, 80, saveImgOut);
//存儲完成后需要清除相關的進程
saveImgOut.flush();
saveImgOut.close();
Log.d("Save Bitmap", "The picture is save to your phone!");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}這樣我們的寫入方法就完成了,比較的簡單的。
首相,我們需要獲取我們的軟件的根目錄。我們可以使用Context.getFilesDir()來獲取到軟件的根目錄,并且我需要保存到我們的images文件下方。
這樣獲取了我么的存儲路徑然后我們的需要判斷是不是首次使用,或者是該目錄是否存在,然后我們看一下如何來判斷我們的文件存在方法。
看一下源代碼:
class FileUtils {
/**
* 判斷指定目錄的文件夾是否存在,如果不存在則需要創建新的文件夾
* @param fileName 指定目錄
* @return 返回創建結果 TRUE or FALSE
*/
static boolean fileIsExist(String fileName)
{
//傳入指定的路徑,然后判斷路徑是否存在
File file=new File(fileName);
if (file.exists())
return true;
else{
//file.mkdirs() 創建文件夾的意思
return file.mkdirs();
}
}
}上述就是小編為大家分享的怎么在Android中將Bitmap保存到本地了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。