日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android—将Bitmap图片保存到SD卡目录下或者指定目录

發布時間:2025/5/22 Android 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android—将Bitmap图片保存到SD卡目录下或者指定目录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

直接上代碼就不廢話啦

一:保存到SD卡下

?

[java]?view plain?copy
  • File?file?=?new?File(Environment.getExternalStorageDirectory(),?System.currentTimeMillis()+".jpg");??
  • ????try?{??
  • ????????????out?=?new?FileOutputStream(file);??
  • ????????????btImage.compress(Bitmap.CompressFormat.JPEG,?90,?out);??
  • ????????????System.out.println("___________保存的__sd___下_______________________");??
  • ????????}?catch?(FileNotFoundException?e)?{??
  • ????????????e.printStackTrace();??
  • ????????}??
  • ????????try?{??
  • ????????????out.flush();??
  • ????????????out.close();??
  • ????????}?catch?(IOException?e)?{??
  • ????????????e.printStackTrace();??
  • ????????}??
  • ????????Toast.makeText(HahItemActivity.this,"保存已經至"+Environment.getExternalStorageDirectory()+"下",?Toast.LENGTH_SHORT).show();??
  • ?????}??
  • 上面的方法就是 直接定義一個文件的路徑,和圖片的名稱,然后保存.

    ?

    二:保存Bitmap到指定的SD卡文件夾目錄下

    想想也知道,這個必須先有個文件夾,才能把圖片保存這里面,那就按照思路學代碼吧

    ?

    [java]?view plain?copy
  • if?(Environment.getExternalStorageState().equals(?Environment.MEDIA_MOUNTED))?//?判斷是否可以對SDcard進行操作??
  • ?????????????{????//?獲取SDCard指定目錄下??
  • ?????????????????String??sdCardDir?=?Environment.getExternalStorageDirectory()+?"/CoolImage/";??
  • ?????????????????File?dirFile??=?new?File(sdCardDir);??//目錄轉化成文件夾??
  • ?????????????????if?(!dirFile?.exists())?{??????????????//如果不存在,那就建立這個文件夾??
  • ????????????????????dirFile?.mkdirs();??
  • ?????????????????????}??????????????????????????//文件夾有啦,就可以保存圖片啦??????????????
  • ?????????????????File?file?=?new?File(sdCardDir,?System.currentTimeMillis()+".jpg");//?在SDcard的目錄下創建圖片文,以當前時間為其命名??
  • ??????
  • ????????????try?{??
  • ????????????????out?=?new?FileOutputStream(file);??
  • ????????????????btImage.compress(Bitmap.CompressFormat.JPEG,?90,?out);??
  • ????????????????System.out.println("_________保存到____sd______指定目錄文件夾下____________________");??
  • ????????????}?catch?(FileNotFoundException?e)?{??
  • ????????????????e.printStackTrace();??
  • ????????????}??
  • ????????????try?{??
  • ????????????????out.flush();??
  • ????????????????out.close();??
  • ????????????}?catch?(IOException?e)?{??
  • ????????????????e.printStackTrace();??
  • ????????????}??
  • ????????????Toast.makeText(HahItemActivity.this,"保存已經至"+Environment.getExternalStorageDirectory()+"/CoolImage/"+"目錄文件夾下",?Toast.LENGTH_SHORT).show();??
  • ?????????}??
  • ?

    注:訪問權限注意哦

    ?

    [java]?view plain?copy
  • <!--?安卓讀寫sd權限?-->??
  • ?<uses-permission?android:name="android.permission.READ_EXTERNAL_STORAGE"?/>??
  • ?<uses-permission?android:name="android.permission.WRITE_EXTERNAL_STORAGE"?/>??
  • t;uses-permission?android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>???


  • ?

    關于圖片的 ?SD卡的?
    未完 ? 待續

    ?

    [java]?view plain?copy
  • //將Bitmap圖片保存到sd卡??
  • ??
  • ???protected?void?saveBitmapToSD(Bitmap?bt)?{??
  • ???????File?path?=?Environment.getExternalStorageDirectory();??
  • ???????File?file?=?new?File(path,?System.currentTimeMillis()?+?".jpg");??
  • ???????System.out.println(Environment.getExternalStorageState()?+?"/Cool/"?+"000000000000000000000000000");??
  • ???????try?{??
  • ???????????FileOutputStream??out?=?new?FileOutputStream(file);??
  • ???????????bt.compress(Bitmap.CompressFormat.JPEG,?90,?out);??
  • ???????}?catch?(FileNotFoundException?e)?{??
  • ???????????e.printStackTrace();??
  • ???????}??
  • ???????out.flush();??
  • ???????out.close();??
  • ???}??
  • ??
  • ???/**?
  • ????*?保存bitmap到SD卡?
  • ????*?@param?bitName?保存的名字?
  • ????*?@param?mBitmap?圖片對像?
  • ????*?return?生成壓縮圖片后的圖片路徑?
  • ????*/??
  • ???public?static?String?saveMyBitmap(String?bitName,Bitmap?mBitmap)?{??
  • ???????File?f?=?new?File("/sdcard/"?+?bitName?+?".png");??
  • ???????try?{??
  • ???????????f.createNewFile();??
  • ???????}?catch?(IOException?e)?{??
  • ???????????System.out.println("在保存圖片時出錯:"?+?e.toString());??
  • ???????}??
  • ???????FileOutputStream?fOut?=?null;??
  • ???????try?{??
  • ???????????fOut?=?new?FileOutputStream(f);??
  • ???????}?catch?(FileNotFoundException?e)?{??
  • ???????????e.printStackTrace();??
  • ???????}??
  • ???????try?{??
  • ???????????mBitmap.compress(Bitmap.CompressFormat.PNG,?100,?fOut);??
  • ???????}?catch?(Exception?e)?{??
  • ???????????return?"create_bitmap_error";??
  • ???????}??
  • ???????try?{??
  • ???????????fOut.flush();??
  • ???????}?catch?(IOException?e)?{??
  • ???????????e.printStackTrace();??
  • ???????}??
  • ???????try?{??
  • ???????????fOut.close();??
  • ???????}?catch?(IOException?e)?{??
  • ???????????e.printStackTrace();??
  • ???????}??
  • ??
  • ???????return?"/sdcard/"?+?bitName?+?".png";??
  • ???}??
  • ??
  • ???/**?
  • ????*?保存bitmap到SD卡?
  • ????*?@param?bitmap?
  • ????*?@param?imagename?
  • ????*/??
  • ???public?static?String?saveBitmapToSDCard(Bitmap?bitmap,?String?imagename)?{??
  • ???????String?path?=?"/sdcard/"?+?"img-"?+?imagename?+?".jpg";??
  • ???????FileOutputStream?fos?=?null;??
  • ???????try?{??
  • ???????????fos?=?new?FileOutputStream(path);??
  • ???????????if?(fos?!=?null)?{??
  • ???????????????bitmap.compress(Bitmap.CompressFormat.JPEG,?90,?fos);??
  • ???????????????fos.close();??
  • ???????????}??
  • ??
  • ???????????return?path;??
  • ???????}?catch?(Exception?e)?{??
  • ???????????e.printStackTrace();??
  • ???????}??
  • ???????return?null;??
  • ???}????
  • 轉載于:https://www.cnblogs.com/exmyth/p/8428456.html

    總結

    以上是生活随笔為你收集整理的Android—将Bitmap图片保存到SD卡目录下或者指定目录的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。