Android本地缓存图片示例代码
来源:互联网 发布:粉红色的火烈鸟 知乎 编辑:程序博客网 时间:2024/06/16 12:34
本地缓存工具类
public class LocalCacheUtils { private static final String LOCAL_CACHE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/xxx_cache"; // 写本地缓存 public void setLocalCache(String url, Bitmap bitmap) { File dir = new File(LOCAL_CACHE_PATH); if (!dir.exists() || !dir.isDirectory()) { dir.mkdirs(); // 创建文件夹 } try { String fileName = MD5Encoder.encode(url); File cacheFile = new File(dir, fileName); bitmap.compress(CompressFormat.JPEG, 100, new FileOutputStream(cacheFile)); // 参1:图片格式;参2:压缩比例0-100; 参3:输出流 } catch (Exception e) { e.printStackTrace(); } } // 读本地缓存 public Bitmap getLocalCache(String url) { try { File cacheFile = new File(LOCAL_CACHE_PATH,MD5Encoder.encode(url)); if (cacheFile.exists()) { Bitmap bitmap = BitmapFactory.decodeStream(new FileInputStream(cacheFile)); return bitmap; } } catch (Exception e) { e.printStackTrace(); } return null; }}
MD5工具类
public class MD5Encoder {
public static String encode(String string) throws Exception { byte[] hash = MessageDigest.getInstance("MD5").digest(string.getBytes("UTF-8")); StringBuilder hex = new StringBuilder(hash.length * 2); for (byte b : hash) { if ((b & 0xFF) < 0x10) { hex.append("0"); } hex.append(Integer.toHexString(b & 0xFF)); } return hex.toString();}
}
阅读全文
0 0
- Android本地缓存图片示例代码
- Android图片本地缓存
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- 【Android】Android清除本地数据缓存代码
- Android 远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- Android远程图片获取和本地缓存
- linq join on 多条件
- java基础(三):移位符的运用
- 利用元素属性值进行排序的简单实例
- springmvc从数据库中读取数据并且显示成选择框工具类
- 详解MyBatis的动态SQL
- Android本地缓存图片示例代码
- Jedis的连接和使用
- Java学习day7
- Cocos Code IDE 配置问题
- JZ2440的NandFlash控制器
- Android 阅读PDF文档
- 使用idea和wsdl生成java代码
- 从底层分析c和类c语言
- Ubuntu下Kintinuous+ElasticFusion+ORB-Slam2配置中的问题记录