Android—将Bitmap图片保存到SD卡目录下或者指定目录
直接上代码就不废话啦
一:保存到SD卡下
- 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卡文件夹目录下
想想也知道,这个必须先有个文件夹,才能把图片保存这里面,那就按照思路学代码吧
- 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();
- }
注:访问权限注意哦
- <!-- 安卓读写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卡的
未完 待续
- //将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;
- }
Android—将Bitmap图片保存到SD卡目录下或者指定目录的更多相关文章
- Android开发 将数据保存到SD卡
前言: 使用Activity的openFileOutput()方法保存文件,文件是存放在手机空间上,一般手机的存储空间不是很大,存放些小文件还行,如果要存放像视频这样的大文件,是不可行的.对于像视频这 ...
- Android相机、相册获取图片显示并保存到SD卡
Android相机.相册获取图片显示并保存到SD卡 [复制链接] 电梯直达 楼主 发表于 2013-3-13 19:51:43 | 只看该作者 |只看大图 本帖最后由 happy小妖同学 ...
- Android全屏截图的方法,返回Bitmap并且保存在SD卡上
Android全屏截图的方法,返回Bitmap并且保存在SD卡上 今天做分享,需求是截图分享,做了也是一个运动类的产品,那好,我们就直接开始做,考虑了一下,因为是全屏的分享,所有很自然而然的想到了Vi ...
- Android 将文件保存到SD卡,从卡中取文件,及删除文件
//保存到SD卡 private static String sdState = Environment.getExternalStorageState(); private static S ...
- [置顶] Android学习系列-把文件保存到SD卡上面(6)
Android学习系列-把文件保存到SD卡上面(5) 一般多媒体文件,大文件需要保存到SD卡中.关键点如下: 1,SD卡保存目录:mnt/sdcard,一般采用Environment.getExter ...
- Android开发调试日志工具类[支持保存到SD卡]
直接上代码: package com.example.callstatus; import java.io.File; import java.io.FileWriter; import java.i ...
- Libgdx实现异步加载网络图片并保存到SD卡或者data/data目录下边
Libgdx实现异步加载网络图片并保存到SD卡或者data/data目录下边,当本地有图片的时候,直接从本地读取图片,如果本地没有图片,将从服务器异步加载图片 package com.example. ...
- Linux笔记(开机自动将kerne log保存到SD卡中)
有时候为了测试机器的稳定性,需要煲机测试几天的情况,这个时候机器已经封装好,不能再接串口线出来. 为了追溯问题,就需要将log信息保存下来. 于是就需要这样一个功能:系统启动后,自动将kernel的l ...
- Android自定义照相机实现(拍照、保存到SD卡,利用Bundle在Acitivity交换数据)
Android自定义照相机实现 近期小巫在学校有一个创新项目,也不是最近,是一个拖了很久的项目,之前一直没有去搞,最近因为要中期检查,搞得我跟小组成员一阵忙活,其实开发一款照相机软件并不太难,下面就是 ...
随机推荐
- Jquery/js引入的button的onclik事件只触发一次
目标描述 我要实现的是:通过监听button的click事件,从而通过ajax向servlet发送请求获取数据库中的数据,然后返回的页面,并要求局部刷新 一次页面的加载是html直接页面初始化本身的 ...
- Java - "JUC线程池" Callable与Future
Java多线程系列--“JUC线程池”06之 Callable和Future Callable 和 Future 简介 Callable 和 Future 是比较有趣的一对组合.当我们需要获取线程的执 ...
- POJ1611(KB2-B)
The Suspects Time Limit: 1000MS Memory Limit: 20000K Total Submissions: 39211 Accepted: 18981 De ...
- Vue: ES6常用语法
ES6 模板字符串: ~ ${变量名}~ <div id="app"></div> <script> /* 找到对应id */ let ite ...
- H5音乐播放器【歌单列表】
上篇详细描述了播放页歌词如何实现跟随跟单滚动,如何解析歌词,那么歌单页又是如何生成的呢,话不多说,直接上图上代码! 首先需要获取数据,具体获取数据api请转到我跟我大兄弟博客去观看学习去,同时也感谢我 ...
- 自定义适用于手机和平板电脑的 Dynamics 365(三):显示的实体
您可以启用 适用于手机的 Dynamics 365 和 适用于平板电脑的 Dynamics 365 的有限实体集. 若要查看是否启用了实体,或者要启用实体,请单击“设置”>“自定义”>“自 ...
- 2018-10-23 23:29:54 clanguage
2018-10-23 23:29:54 clanguage 在 32 位环境以及 Win64 环境下的运行结果为: short=2, int=4, long=4, char=1 在 64 位 Li ...
- JSTL、JSTL核心标签库——流程处理标签
JSTL环境 JSTL是另一个标准规范,并非在JSP的规范中,所以必须另外下载JSTL实现. 要使用JSTL标签库,必须在JSP网页上使用taglib指示元素定义前置名称与uri参考.例如,引入JST ...
- Spark随机森林实战
package big.data.analyse.ml.randomforest import org.apache.spark.ml.Pipeline import org.apache.spark ...
- c#创建文件( File.Create() )后对文件写操作出错的分析
在C#中,使用system.IO.File.Create()创建完一个文件之后,如果需要对这个文件进行写操作,会出现错误,提示你“这个文件正在被使用”. 原因是System.IO.File.Creat ...