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自定义照相机实现 近期小巫在学校有一个创新项目,也不是最近,是一个拖了很久的项目,之前一直没有去搞,最近因为要中期检查,搞得我跟小组成员一阵忙活,其实开发一款照相机软件并不太难,下面就是 ...
随机推荐
- Oracle中如何写存储过程
>存储过程是什么? 存储过程是一种命名的PL/SQL程序块,输入.输出参数数量[0个或多个],通常没有返回值[也有特殊的情况]. 运行SQL语句时,Oracle是要先编译再执行的:而存储过程是已 ...
- 输出字符串中最长的单词 C# 算法
要求: 设计一个算法从一片英语文章或者英语字符串里面输出其中最长的单词. Input: string Output: string 尽可能多的设计测试用例来测试这个算法. 考虑空间和时间复杂度 ...
- 设计模式之观察者模式(Observer)(4)
简介 观察者模式(Observer)完美的将观察者和被观察的对象分离开.举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上.面向对象设 ...
- php命令行生成与读取配置文件
接着之前的文章:php根据命令行参数生成配置文件 ghostinit.php <?php class ghostinit{ static $v = 'ghost version is 1.1'; ...
- CSS canvas 捕捉视频video元素截图
video元素介绍: http://www.runoob.com/html/html5-video.html https://developer.mozilla.org/zh-CN/docs/Web/ ...
- windows环境下IP多访问
1.E:\wamp64\bin\apache\apache2.4.23\conf\extra\httpd-vhosts.conf 添加: <VirtualHost *:80> Server ...
- js 事件委托代理
在优化网页性能的技巧当中,对DOM的优化是必不可少的.这其中就涉及到了javascript对DOM的频繁操作.比如响应用户操作的事件.一般情况下,如果是稍微初级一点的前端程序员,在拿到项目的时候,对待 ...
- Nginx 优化配置及详细注释
Nginx 的nginx.conf文件,是调优后的,具体影响已经写清楚注释,可以拿来用,有一些设置无效,我备注上了,不知道是不是版本的问题,回头查一下再更正. #普通配置 #==性能配置 #运行用户 ...
- php完美分页工具
<?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $lis ...
- flutter 调用原生(获取当前设备电池电量)
代码: import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'dart:asy ...