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

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 使用字符串、颜色、  尺寸...

    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 Studio编写的模拟选课系统.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 提供了...

Global site tag (gtag.js) - Google Analytics