android sdcard 压缩图片,android如何往SDCard中存取图片
import?java.io.File;
import?java.io.FileNotFoundException;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?android.graphics.Bitmap;
import?android.os.Environment;
import?android.util.Log;
/**
*?保存圖片的類
*
*
*/
public?class?SaveBitmap?{
private?final?static?String?CACHE?=?"/css";
/**
*?保存圖片的方法?保存到sdcard
*
*?@throws?Exception
*
*/
public?static?void?saveImage(Bitmap?bitmap,?String?p_w_picpathName)
throws?Exception?{
String?filePath?=?isExistsFilePath();
FileOutputStream?fos?=?null;
File?file?=?new?File(filePath,?p_w_picpathName);
try?{
fos?=?new?FileOutputStream(file);
if?(null?!=?fos)?{
bitmap.compress(Bitmap.CompressFormat.PNG,?90,?fos);
fos.flush();
fos.close();
}
}?catch?(FileNotFoundException?e)?{
e.printStackTrace();
}?catch?(IOException?e)?{
e.printStackTrace();
}
}
/**
*?獲取sd卡的緩存路徑,?一般在卡中sdCard就是這個目錄
*
*?@return?SDPath
*/
public?static?String?getSDPath()?{
File?sdDir?=?null;
boolean?sdCardExist?=?Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);?//?判斷sd卡是否存在
if?(sdCardExist)?{
sdDir?=?Environment.getExternalStorageDirectory();//?獲取根目錄
}?else?{
Log.e("ERROR",?"沒有內存卡");
}
return?sdDir.toString();
}
/**
*?獲取緩存文件夾目錄?如果不存在創建?否則則創建文件夾
*
*?@return?filePath
*/
private?static?String?isExistsFilePath()?{
String?filePath?=?getSDPath()?+?CACHE;
File?file?=?new?File(filePath);
if?(!file.exists())?{
file.mkdirs();
}
return?filePath;
}
/**
*?獲取SDCard文件
*
*?@return?Bitmap
*/
public?static?Bitmap?getImageFromSDCard(String?p_w_picpathName)?{
String?filepath?=?getSDPath()?+?CACHE??+?"/"?+?p_w_picpathName;
File?file?=?new?File(filepath);
if?(file.exists())?{
Bitmap?bm?=?BitmapFactory.decodeFile(filepath);
return?bm;
}
return?null;
}
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的android sdcard 压缩图片,android如何往SDCard中存取图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (e信linux)
- 下一篇: 鸿蒙系统的挑战,简单的讲解下何为鸿蒙系统