`

android 文件的读取 附源码

阅读更多
与前面的文章http://leequer.iteye.com/blog/607079android的数据存储和访问 附源码这篇文章相比,添加了文件的读取功能和代码的优化
package cn.lee.data;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import cn.lee.Manager.DataManager;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class AboutDateActivity extends Activity {
	private EditText fileNameEditText;
	private EditText fileContentEditText;
	private EditText readfileContentEditText;
	private Button button;
	private Button readButton;
	private static final String TAGSTRING = "AboutDateActivity";

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		
		button                  = (Button) this.findViewById(R.id.button);
		readButton              = (Button) this.findViewById(R.id.readButton);
		fileNameEditText        = (EditText) this.findViewById(R.id.fileName);
		fileContentEditText     = (EditText) this.findViewById(R.id.fileContent);
		readfileContentEditText = (EditText) this.findViewById(R.id.readfileContent);
		
		
		// 读取
		readButton.setOnClickListener(onClickListener);
		// 保存
		button.setOnClickListener(onClickListener);
	}

	/**
	 * 由于这个内部实现类是一个接口的实例 所以这里把他提取出来 作为一个成员变量 2010-04-18
	 */
	private View.OnClickListener onClickListener = new View.OnClickListener() {
		/**
		 * 由于button的父类是view 所以这里的onclick的参数传来的view v就可以找到这个button
		 */
		public void onClick(View v) {
			Button button = (Button) v;// 将父类view强转成子类button
			int info = R.string.sus;
			String fileNameString = fileNameEditText.getText().toString();
			
			if ("".equals(fileNameString)) {
				info = R.string.filenamenotnull;
			} else {
				FileOutputStream fileOutputStream = null;
				FileInputStream  fileInputStream  = null;
				try {
					switch (button.getId()) {
					case R.id.button: {// 保存
						String fileContentString = fileContentEditText.getText().toString();
						fileOutputStream = AboutDateActivity.this
								.openFileOutput(fileNameString,
										Context.MODE_PRIVATE);
						DataManager.saveDate(fileOutputStream,
								fileContentString);

						break;
					}

					case R.id.readButton: {
						fileInputStream = null;
						fileInputStream = AboutDateActivity.this
								.openFileInput(fileNameString);
						String contentString = DataManager
								.readDate(fileInputStream);
						readfileContentEditText.setText(contentString);
						break;
					}
					default:
						break;
					}
				
				
				} catch (Exception e) {
					// TODO Auto-generated catch block
					Log.i(TAGSTRING, e.toString());
					info = R.string.infor;
				} finally {
					try {
						if(fileOutputStream!=null)
						{
							fileOutputStream.close();
						}
						if(fileInputStream !=null)
						{
							fileInputStream.close();
						}
						
					} catch (IOException e) {
						
						Log.i(TAGSTRING, e.toString());
						info = R.string.infor;
					}
				}
			}
			Toast.makeText(AboutDateActivity.this, info, 1).show();
		}

	};
}
2
1
分享到:
评论
3 楼 xiaojian623 2011-09-14  
二楼连源码都懒得下下来看看啊!
2 楼 struts_2010 2011-07-01  
楼主这次的更新,好像没有顺带把xml界面配置文件拷贝出来啊
1 楼 blocker2005 2011-03-23  
很好啊,楼主给力啊

相关推荐

    Android 一个读取和显示pdf文件的库 源码

    在Android平台上,开发一款能够读取和显示PDF文件的应用是一个常见的需求。为了实现这一功能,开发者通常会依赖第三方库。本篇文章将详细讲解基于Android的一个开源库——Android-Pdf-Viewer-Library,它是一个用于...

    Android 文件管理器源码

    这里我们关注的是一个开源的Android文件管理器源码,它具备读取SD卡的功能。对于想要深入理解Android系统文件操作或希望自定义文件管理应用的开发者来说,这是一个宝贵的资源。 首先,我们需要了解Android的文件...

    Android手机读取大文本文件源码

    综上所述,这个源码项目提供了Android读取大文本文件的方法,包括使用AssetManager访问文件、逐行或分块读取、后台异步处理等最佳实践。理解并应用这些技术,可以帮助开发者更高效、更安全地处理大文本文件。

    Android读取Txt文件源码及性能分析

    "Android读取Txt文件源码及性能分析"这个主题涉及到如何在Android应用中读取文本文件并进行一些基本的数据处理,比如统计单词出现的频率,以及如何评估这种操作的性能。以下是对这些知识点的详细说明: 首先,读取...

    android文件上传下载源码

    这个"android文件上传下载源码"的资源提供了实现这些功能的代码示例,对于开发者来说是宝贵的参考资料。以下将详细讲解Android文件上传下载的核心知识点: 1. **文件操作**: Android系统提供了`java.io`和`java....

    Android 文件管理器源码.zip

    通过学习和分析这个源码,开发者不仅可以了解Android文件操作的基本原理,还可以学习到如何构建一个实用的Android应用,这对深入理解Android系统以及提高编程技能大有裨益。对于初学者来说,这是一个很好的实践项目...

    安卓Android源码——文件管理器源码.zip

    【描述】描述中提到的"安卓Android源码——文件管理器源码.zip"是一个包含了实现Android文件管理器功能的源代码集合。这个压缩包可能包含了一系列的图片资源(1_120828192520_1.png和1_120828192520_2.png),这些...

    android 仿ES文件浏览器源码.rar

    Android的文件操作主要通过`java.io`和`java.nio`包实现,源码会涵盖读取、写入、创建、删除、重命名等基本操作。同时,源码可能还使用了`ContentResolver`来与系统的多媒体库交互,获取和管理设备上的图片、视频、...

    android 文件的读取 附

    总的来说,Android文件读取是一个涵盖广泛的话题,从基础的Java I/O操作到Android特有的API,再到源码分析和性能优化,都需要开发者具备一定的理解和实践能力。在日常开发中,结合适当的工具和库,可以更高效地完成...

    android文件管理源码

    以上就是从“android文件管理源码”这个主题中提炼出的关键知识点。这些内容涵盖了Android文件操作的基本原理和常见实践,对于理解Android文件系统管理和多媒体处理有极大的帮助。通过深入学习和理解这些代码,...

    Android文件管理器源码!

    总之,这个"Android文件管理器源码!"提供了学习Android文件操作、压缩解压缩技术以及用户交互设计的良好实践。通过研究和理解这段代码,开发者不仅可以提升自己的编程技能,还能深入了解Android平台的文件系统管理...

    android 文件 浏览器 源码

    通过学习和理解这个源码,开发者不仅可以掌握Android文件系统的操作,还能了解如何组织代码以实现功能丰富的文件浏览器。对于初学者来说,这是一个很好的实践项目,能够提升他们的Android开发技能;对于有一定经验的...

    android中读取properties文件

    在Android开发中,读取`properties`文件是一个常见的任务,主要用于存储配置信息或者与Java中的`.properties`文件进行交互。`.properties`文件是一种简单的键值对格式,常用于跨平台的配置存储。以下是对这个主题的...

    as读取android源码

    本文将详细讲解如何使用AS来读取和理解Android源码,以及配置相关设置。 首先,`android.iml`和`android.ipr`是AS项目的配置文件,它们存储了项目结构、模块信息、构建设置等关键数据。`android.iml`文件代表模块...

    Android实用大屏白板附源码

    10. **文件存储与读取**:Android提供了一系列API用于文件系统的访问,应用可能使用这些API来存储用户的绘图数据,比如保存为图片文件或自定义格式的文件。 以上是"Android实用大屏白板附源码"实例中涉及的主要知识...

    android P android9源码编译.ipr.iml文件

    在Android Studio中,当你打开一个Android项目时,IDE会读取这个文件来恢复项目的所有设置。对于Android P源码编译项目,`.ipr`文件确保了Android Studio能正确识别项目结构并进行编译。 接着,我们来看`.iml`文件...

    Android 通讯录程序附源码

    3. **AndroidManifest.xml**:这是每个Android应用的核心配置文件,其中包含了应用的信息,如所需的权限(如读取联系人权限)、应用组件(Activity、Service等)的声明以及它们之间的关系。 4. **Activity**:在...

    Android简易本地音乐播放器源码,基于Android的简易本地音乐播放器源码

    5. **文件遍历与选择**:为了找到并播放本地音乐,源码可能包含了读取设备存储上的音乐文件(通常位于外部存储的Music目录),这需要使用到文件I/O操作和文件遍历的技巧。 6. **ListView或RecyclerView**:为了展示...

Global site tag (gtag.js) - Google Analytics