`
bcyy
  • 浏览: 1831515 次
文章分类
社区版块
存档分类
最新评论

SharedPreferences 存储图像资源

 
阅读更多

上一篇文章我们使用了SharedPreferences存储复杂的对象,这次我们使用SharedPreferences存储图像资源。原理和上一篇的时一样的。

下来我们看一下具体的操作。

首先我们放一张图片

jing.jpg

然后上代码:

	/**
	 * 保存图像
	 */
	private void saveImage(){
		ByteArrayOutputStream baos=new ByteArrayOutputStream();
		
		BitmapDrawable drawable=(BitmapDrawable) getResources().getDrawable(R.drawable.jing);
		drawable.getBitmap().compress(CompressFormat.JPEG, 50, baos);
		String image64=new String(Base64.encodeBase64(baos.toByteArray()));
		
		SharedPreferences preferences = getSharedPreferences("base64image",
				MODE_PRIVATE);
		
		Editor editor=preferences.edit();
		editor.putString("image", image64);
		editor.commit();
	}





这是保存图像资源到SharedPreferences。还是要借助base64进行编码。


然后我们在来看一下读取资源图片的代码。


	private void readImage(){
		SharedPreferences preferences = getSharedPreferences("base64image",
				MODE_PRIVATE);
		String imageBase64=preferences.getString("image", "");
		if(imageBase64!=""){
			byte [] images=Base64.decodeBase64(imageBase64.getBytes()) ;
			ByteArrayInputStream bais=new ByteArrayInputStream(images);
			((ImageView) findViewById(R.id.imageView1)).setImageDrawable(Drawable.createFromStream(bais, "base64image"));
		}
		
	}



ok,这样我们就完成了图片的读取与保存的过程!

分享到:
评论

相关推荐

    疯狂Android讲义(第2版)源代码 第6章~第9章

    6.1、资源的类型及存储方式: 6.2、使用字符串、颜色、尺寸资源: 6.3、数组资源: 6.4、使用Drawable资源:图片资源; StateListDrawable资源; LayerDrawable资源; ShapeDrawable资源; ClipDrawable资源; ...

    安卓开发宝典进阶版.zip

    安卓数据存储:介绍安卓应用中数据的存储和管理方法,包括SQLite数据库、SharedPreferences、文件存储等。 安卓网络编程:讲解如何在安卓应用中进行网络通信,包括HTTP请求、Socket编程、JSON解析等。 安卓多媒体...

    Android开发项目---人力资源管理系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    Android实例代码

    6.1、资源的类型及存储方式: 6.2、使用字符串、颜色、尺寸资源: 6.3、数组资源: 6.4、使用Drawable资源:图片资源; StateListDrawable资源; LayerDrawable资源; ShapeDrawable资源; ClipDrawable资源; ...

    Android高薪之路:Android程序员面试宝典 李宁

    13 5 图像资源 13 6 其他资源 第14章 其他面试例题 14 1 NDK编程 14 2 传感器 14 3 语音识别技术 14 4 Google地图与GPS 14 5 桌面插件 14 6 输入法开发 14 7 测试驱动开发 14 8 性能优化">下载一个cebx阅读器即可 ...

    疯狂Android讲义源码

     6.1.1 资源的类型以及存储方式 214  6.1.2 使用资源 216  6.2 使用字符串、颜色、  尺寸资源 217  6.2.1 颜色值的定义 217  6.2.2 定义字符串、颜色、尺寸资源  文件 218  6.2.3 使用字符串、颜色、  尺寸...

    疯狂Android讲义.part1

    6.1.1 资源的类型以及存储方式 214 6.1.2 使用资源 216 6.2 使用字符串、颜色、 尺寸资源 217 6.2.1 颜色值的定义 217 6.2.2 定义字符串、颜色、尺寸资源 文件 218 6.2.3 使用字符串、颜色、 尺寸资源 219 6.3 数组...

    opencv实践,基于Android的车牌识别系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    安卓Android小说阅读系统app毕业源码案例设计.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    Android可穿戴设备 手表根据手表获取的心率测试当前的情绪,目前支持AndroidWear,TicWear系统的手表.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    恶意软件检测系统Android端代码.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    德桂轩平板点菜系统Android客户端源码.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    基于Android的汽车租赁系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    Android车辆信息采集系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    基于Android的幼儿园管理系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    基于Android开发的铁路售票系统.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    Android系统去广告、精简、NOAD、MOD作品集!.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

    点餐系统 太原科技大学 Android应用开发 实验.zip

    6. 数据存储:Android 提供了多种数据存储方式,包括 SQLite 数据库、文件存储、SharedPreferences 等。 7. 网络通信:Android 支持多种网络通信方式,包括 HTTP、TCP、UDP 等。 8. 社交媒体集成:Android 提供了...

Global site tag (gtag.js) - Google Analytics