`
1140566087
  • 浏览: 560310 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18573
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:314563
Group-logo
J2ME 基础学习课程集
浏览量:18796
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17600
社区版块
存档分类
最新评论

Android 之 在内存中读/取数据

阅读更多
在内存中读  写文件:

小贴士:
* 获取内存中的根目录:Environment.getRootDirectory();

写文件:
/* 测试:将文件写入到内存中 */
	/* 默认的目录为:\data\data\com.test\files */
	OnClickListener listener_write_rom = new OnClickListener() {

		public void onClick(View v) {
			/* 保存数据的文件名, 以及类型 */
			String fileName = "f.txt";
			
			/* 保存的数据信息 ,  即文件里面的内容 */
			String message = "测试将数据写入到内存";
			
			try{
				/* 获取输出流的对象 */
				FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
				
				/* 创建一个 字节数组保存要写入的数据,将字符转为字节数组*/
				byte[] buffer = message.getBytes();
				
				/* 开始写入数据 */
				fout.write(buffer);
				
				/* 关闭流 */
				fout.close();
				
			}catch(Exception ex){
				ex.printStackTrace();
			}
		}
	};
	
	
读取内存中的数据信息:
	/* 测试:读取内存中的文件 *//* 读取内存中文件中的数据, 并显示给用户 */
	OnClickListener listener_read_rom = new OnClickListener() {
		
		public void onClick(View v) {
			try{
				/* 获取内存中保存数据的根目录 */
				File baseFileName = Environment.getRootDirectory();
				
				/* 获取流的对象, 并指定操作的是对哪个文件进行数据的读取  */
				FileInputStream fis = openFileInput("f.txt");
				
				/* 判断文件大小 */
				int length = fis.available();
				
				/* 容器,装读出的数据 */
				byte[] buffer = new byte[length];
				
				/* 开始读取数据 */
				fis.read(buffer);
				
				/* 转换字符编码 */
				String res = EncodingUtils.getString(buffer, "UTF-8");
				
				/* 关闭流 */
				fis.close();
				
				/* 提示用户 */
				Toast.makeText(MainActivity.this, res, 1000).show();
			}catch(Exception ex){
				
			}			
			
		}
	};
分享到:
评论

相关推荐

    新版Android开发教程.rar

    � 采用了对有限内存、电池和 CPU 优化过的虚拟机 Dalvik , Android 的运行速度比想象的要快很多。 � 运营商(中国移动等)的大力支持,产业链条的热捧。 � 良好的盈利模式( 3/7 开),产业链条的各方:运营商、...

    android录音绘制波形

    在Android平台上,录音并绘制波形是一个常见的需求,特别是在音乐应用、语音识别或者实时音频处理的应用中。"audioWaveCanvas-master.zip"是一个学习资源,它包含了一个DEMO项目,用于展示如何实现这一功能。让我们...

    Android新浪微博图片缓冲技术

    内存使用了弱引用,在内存不够用的情况下,这个内存就会不释放到,为什么还使用这个呢,大家都知道,从内存直接读取数据是最快的,所以加个内存,能读到最好,如果读不到就从本地缓存中取,这样省了在去下载,速度...

    OcrDemo文字识别系统

    通过这个项目,开发者可以学习到如何在Android应用中集成OCR功能,实现从摄像头取图、调用云服务识别文字、再到显示结果的完整流程。这个过程涵盖了Android应用开发的基础知识,如UI设计、权限管理、网络请求,以及...

    71道经典Android面试题和答案_重要知识点都包含了

    - **选项 D:** 不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失 **答案:** B **知识点说明:** - **选项 A 错误原因:** 这是DOM解析的特点,而非SAX。 - **选项 B 正确:** SAX是一种...

    Intent_Bundle_传参数

    在Android应用开发中,Intent是连接各个组件(如Activity、Service等)的桥梁,用于传递数据和启动意图。而当需要传递大量复杂的数据时,Intent自带的Extra字段可能不足以满足需求,这时我们可以利用Bundle对象来...

    Android 条码扫描程序源码.zip

    - 在Android应用中访问摄像头需要请求相应的权限,如`<uses-permission android:name="android.permission.CAMERA" />`。 - 源码可能包含`Camera`类的使用,用于控制摄像头,并通过`SurfaceView`显示实时预览。 3...

    NDK调用OpenGL使用Camera2进行相机黑白滤镜预览(FBO离屏渲染)

    OpenGL是用于创建2D和3D图形的强大框架,而在Android中,通过NDK(Native Development Kit)可以更高效地利用其功能。FBO(Frame Buffer Object)是OpenGL的一个特性,它允许开发者在GPU上创建离屏渲染的目标。在这...

    Android笔试题

    在Android开发中,理解内存管理至关重要,特别是内存回收机制。题目中的选项明确指出,正确答案是(B),即“内存回收程序负责释放无用内存”。这表明在Java和Android中,内存回收是由垃圾收集器自动完成的,无需...

    Android 各大网络请求库的比较及实战

    在Android应用开发中,网络请求是必不可少的一部分,用于获取服务器数据、实现远程调用等功能。本文将深入探讨四大主流的Android网络请求库:Volley、Retrofit、OkHttp,并进行实战对比,帮助开发者选择最适合自己的...

    超级完整的Android面试题(附答案)

    在 Android 中,可以通过 `<style>` 标签在 `res/values/styles.xml` 文件中定义样式。 ### 16. 使用 Menu 第十六个问题是关于使用 Menu 的方法。正确答案包括 **(A) onCreateOptionsMenu()** 和 **(C) ...

    android手机游戏分享客户端源码.zip

    6. **Intent**:在Android中,Intent用于在组件之间传递消息,例如启动一个新的Activity或者启动一个服务。 7. **BroadcastReceiver**:广播接收器可以监听系统广播事件,比如网络状态改变,用于实现特定功能,如...

    Android XML解析

    在Android开发中,XML(eXtensible Markup Language)是一种重要的数据交换格式,广泛用于配置文件、布局文件以及网络数据传输。本篇文章将深入探讨Android中的XML解析技术,包括SAX、DOM和PULL解析器的原理、使用...

    电信设备-取卡器及移动终端.zip

    在电信行业中,取卡器和移动终端是两个关键的组成部分,它们在我们的日常通信中扮演着重要角色。本文将深入探讨这两个概念,以及它们在现代通信技术中的应用。 首先,让我们了解一下“取卡器”。在大多数智能手机和...

    面试必备之乐观锁与悲观锁.pdf

    - **应用场景**:在多读少写或多读场景中更为适用,因为这些场景下的数据冲突相对较少,使用乐观锁可以提高系统的整体吞吐量。 #### 二、悲观锁详解 悲观锁通常用于那些对数据一致性要求较高的场景,尤其是在并发...

    andriod 地图 源码

    需要注意的是,Geocoder的可用性取决于设备上的后端服务,因此在实际开发中需要处理可能的异常情况。 离线地图功能对于那些网络不稳定或者流量有限的用户非常实用。在Android中,可以使用SQLite数据库或文件系统...

    安卓面试题

    Intent在Android中扮演着通信媒介的角色,用于组件间的交互和数据传输。它可以启动新的Activity、Service或BroadcastReceiver,也可以传递数据,是Android框架中的重要组成部分。 #### 8. SAX解析XML的特点? SAX...

    API取设备信息源码

    在这个特定的案例中,"取设备好多东西.e"可能是包含实现设备信息获取功能的源码文件,其扩展名可能是某种编程语言的特定表示。例如,如果它是`.cpp`或`.java`文件,那么它可能用C++或Java编写。而"源码使用说明.txt...

    安卓开发指南

    4. **ContentProvider**:ContentProvider是Android四大组件之一,主要用于在不同的应用之间共享数据。 5. **Intent**:Intent用于在不同组件间传递消息,它可以启动新的Activity、Service或者发送广播。 #### ...

Global site tag (gtag.js) - Google Analytics