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

Android 之 使用流读取资源文件中的数据

阅读更多
File:通过文件存储数据;

1、从resource中的raw文件夹中获取文件并读取数据(可以自动生成资源ID)

案例:读取res/raw/f.txt ---- 文件内容:欢迎测试从resource中的raw文件夹中获取文件并读取数据;
  并通过提示显示给用户;

代码如下:

	/* File  */
	/* 测试:从raw对资源文件进行数据的读取,并显示 */
	OnClickListener listerner_raw = new OnClickListener() {

		public void onClick(View v) {
			String temp = null;
			try{
				/* 获取流的对象 InputStream *//* 理解:通道建立 */
				InputStream in = getResources().openRawResource(R.raw.f);

				/* 获取文件的大小(字节数) */
				int length = in.available();

				/* 创建一个byte数组, 用于装载字节信息 */
				byte[] buffer = new byte[length];

				/* 开始读取文件read(); *//* 解释:将读取到的字节放入到buffer这个数组中 */
				in.read(buffer);

				/* 编码的转换三种类型:UTF-8 UNICODE BIG5 *//**/
				temp = EncodingUtils.getString(buffer, "UTF-8");
				//temp = EncodingUtils.getString(buffer, "UNICODE");
				//temp = EncodingUtils.getString(buffer, "BIG5");
				//temp = EncodingUtils.getString(buffer, "ANST");


				/* 通过String 的构造方法,将字节数组构建成字符串 */
				//String temp = new String(buffer);

				/* 流的关闭close(); */
				in.close();

				Toast.makeText(MainActivity.this, temp.toString(), 1000).show();

			}catch(Exception ex){
				ex.printStackTrace();
			}

		}
	};

2、从assets中获取文件并读取数据;(不能生成资源ID)

案例:在assets中有一个f.txt文件,读取文件中的数据
代码:
/* 测试:从assets中对文件进行读取 */
	OnClickListener listener_assets = new OnClickListener() {

		public void onClick(View v) {
			String temp ="";
			try{
				/* 获取流的对象,建立通道 */
				InputStream in = getResources().getAssets().open("f.txt");

				/* 获取文件的大小(字节数) */
				int length = in.available();

				/* 创建一个byte数组, 用于装载字节信息 */
				byte[] buffer = new byte[length];

				/* 开始读取文件read(); *//* 解释:将读取到的字节放入到buffer这个数组中 */
				in.read(buffer);

				/* 编码的转换三种类型:UTF-8 UNICODE BIG5 *//* 编码的选择根据f.txt文件的编码类型进行调整  */
				//temp = EncodingUtils.getString(buffer, "UTF-8");
				//temp = EncodingUtils.getString(buffer, "UNICODE");
				//temp = EncodingUtils.getString(buffer, "BIG5");


				/* 通过String 的构造方法,将字节数组构建成字符串 */
				//temp = new String(buffer);

				/* 流的关闭close(); */
				in.close();

			}catch(Exception ex){
				ex.printStackTrace();
			}
			Toast.makeText(MainActivity.this, temp+"", 1000).show();
		}
	};




小贴士:
* 以上两种情况是在res资源目录下的资源文件,资源文件只能进行读,不能写;
0
5
分享到:
评论

相关推荐

    android的IO流读写文件demo.zip_DEMO_android_android的IO流读写文件操作

    在Android平台上,IO流是进行文件读写操作的基础工具,尤其在处理数据交换、资源保存等方面扮演着重要角色。本文将深入探讨Android中如何利用IO流进行文件的读写操作,以及相关的示例代码。 首先,Android中的IO流...

    android jni使用libzip读取压缩文件

    相比之下,使用NDK自带的API读取assets资源文件通常更简单,因为assets可以直接通过AAssetManager访问,而无需经过ZIP解压过程。以下是一个简单的示例: ```c++ extern "C" JNIEXPORT jstring JNICALL Java_...

    android项目中读取ini配置文件

    在Android项目中,`assets`文件夹用于存放应用运行时需要的非资源文件,如配置文件、数据库、文本等。要将`ini`文件放入此目录,只需在项目的`src/main/assets`目录下创建一个`ini`文件,例如`config.ini`,并将所...

    Android读取本地json文件的方法(解决显示乱码问题)

    在Android中,我们通常使用`AssetManager`来访问应用的资源文件,包括JSON文件。下面的代码展示了如何读取JSON文件,但可能会导致乱码: ```java public static String readLocalJson(Context context, String ...

    Android应用程序中读写txt文本文件的基本方法讲解

    在Android应用程序中,读写txt文本文件是常见的需求,特别是在数据持久化或用户交互时。本文将详细讲解如何使用`context.openFileInput()`和`context.openFileOutput()`这两个方法来实现这一功能。这两个方法属于`...

    Android 文件读写操作

    在Android系统中,文件读写操作是开发过程中常见的任务,涉及到资源文件、数据区文件以及外部存储(如SD卡)的访问。以下是对这些操作的详细说明: 一、资源文件的读取 1. 从resource的raw中读取文件数据: 资源...

    Android 读写文件实例

    在Android平台上,对文件进行读写操作是应用程序中常见的需求,比如存储用户数据、缓存信息或者媒体资源。本文将详细讲解如何在Android系统中进行SD卡和内部存储的读写,以及如何获取文件目录。 ### 1. Android权限...

    文件流IO,android文件流

    在实际开发中,理解并熟练运用这些文件流技术,能够帮助我们高效、稳定地处理文件数据,无论是在普通的Java应用还是在资源有限的Android平台上。通过选择合适的流类型,结合缓冲、转换和高级特性,我们可以优化文件...

    Android NDK文件读取 读写 操作 NDK数据加密DEMO

    Android jni文件读写 NDK文件读取 读写 操作 NDK数据加密DEMO 源码直接上传,运行在android6.0系统测试通过

    java android 读取dat文件

    2. **Android读取.dat文件** 在Android中,读取文件的操作与Java略有不同,因为Android对文件访问有更严格的限制。一般情况下,你需要使用`AssetManager`(对于预打包的文件)或`Context`的方法(如`openFileInput()...

    Android Excel文件写入和读取

    在Android应用开发中,有时需要处理大量的结构化数据,这时Excel文件就成为一个理想的存储选择,因为它们便于人类阅读,同时也方便程序进行数据处理。本文将详细介绍如何在Android中实现Excel文件的读取与写入。 ...

    Android USB检测,文件读写demo

    在Android平台上,USB设备的检测和文件读写是开发者经常遇到的任务,特别是在移动设备与外部存储设备交互的场景中。本教程将详细讲解如何实现"Android USB检测,文件读写demo",帮助你掌握相关技能。 首先,让我们...

    android读取Excel文件

    在Android平台上,读取Excel文件是一项常见的需求,特别是在处理数据导入导出或者数据分析的应用中。Excel文件通常包含多个工作表,每个工作表又由多行多列的数据组成,因此,理解如何在Android环境下操作Excel文件...

    android 中读取较大的TXT文件

    本文将深入探讨如何在Android中有效地读取较大的TXT文件,以避免内存溢出并确保良好的用户体验。 首先,我们需要理解Android的内存限制。由于移动设备资源有限,Android系统对每个应用分配的内存大小有限,这要求...

    Android Assets文件和Raw文件读取

    在Android应用开发中,Assets和Raw文件夹是两个重要的资源存储区域,用于存放非编译的、原始的数据文件。这两个目录都有各自的用途和特点,开发者可以根据需求选择合适的存储位置。 **Android Assets文件** Assets...

    Android应用源码之安卓读取Excel文件获取表格数据.zip

    本资源“Android应用源码之安卓读取Excel文件获取表格数据.zip”提供了实现这一功能的源代码示例。下面,我们将深入探讨如何在Android应用中读取Excel文件并获取其中的数据。 首先,我们需要理解的是,Android系统...

    Android 之 将RAW资源文件写入SD卡工具类

    在Android开发中,有时我们需要将应用内部的RAW资源文件复制到外部存储(如SD卡)以便于用户访问或保存数据。这个"Android之将RAW资源文件写入SD卡工具类"是一个实用的功能,可以帮助开发者轻松完成这个任务。下面将...

    Android开发之读取Excel表格数据

    本篇文章将详细讲解如何在Android环境中直接读取资源文件夹下的Excel表格数据,为你的应用提供便捷的数据处理能力。 首先,理解Android的资源文件夹结构是至关重要的。在Android Studio项目中,我们通常把静态的非...

    Android读取SMB服务器资源或者下载资源文件

    在Android平台上,访问和下载SMB(Server Message Block)服务器上的资源是一项常见任务,尤其是在企业环境中,SMB常用于共享文件和数据。SMB是一种网络文件系统协议,它允许网络上的计算机共享文件、打印机和其他...

    Android Studio文本文件内容读取例子(不用sd卡)

    在Android开发中,读取文本文件是常见的任务,例如加载配置信息、用户数据或显示静态内容。本示例将详细讲解如何在Android Studio中实现不依赖SD卡的文本文件读取。以下是一个简单的步骤和相关知识点: 1. **创建...

Global site tag (gtag.js) - Google Analytics