`

android手机内存中的文件操作

阅读更多
android为手机存储范围内的文件操作提供了openFileOutput和openFileInput API,对文件操作提供了便利,一下是一个小demo,供参考学习使用

main activity
package com.opfiletext.example;

import java.io.IOException;

import com.opfiletext.service.FileService;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {
	
	private EditText edit_filename, edit_filecontent;
	private Button submit, read;
	private TextView tv;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        edit_filename = (EditText)findViewById(R.id.filename);
        edit_filecontent = (EditText)findViewById(R.id.finecontent);
        tv = (TextView)findViewById(R.id.tv);
        
        submit = (Button)findViewById(R.id.submit);
        submit.setOnClickListener(new SubminOnClickListener());
    
        read = (Button)findViewById(R.id.read);
        read.setOnClickListener(new ReadOnClickListener());
    }
    
    
    private final class SubminOnClickListener implements View.OnClickListener{

		@Override
		public void onClick(View v) {
			String filename = edit_filename.getText().toString();
			String filecontent = edit_filecontent.getText().toString();
			
			FileService fm = new FileService(MainActivity.this);
			try {
				fm.save(filename, filecontent);
				Toast.makeText(MainActivity.this, "保存成功", Toast.LENGTH_SHORT).show();
			} catch (IOException e) {
				Toast.makeText(MainActivity.this, "保存失败", Toast.LENGTH_SHORT).show();
				e.printStackTrace();
			}
		}
    }
    
    private final class ReadOnClickListener implements View.OnClickListener{

		@Override
		public void onClick(View v) {
			String filename = edit_filename.getText().toString();
			FileService fm = new FileService(MainActivity.this);
			try {
				String content = fm.read(filename);
				tv.setText(content);
			} catch (IOException e) {
				tv.setText("解析异常");
				e.printStackTrace();
			}
		}
    }
}




service class
package com.opfiletext.service;

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

import android.content.Context;

public class FileService {
	
	private Context context;
	
	public FileService(Context context) {
		this.context = context;
	}

	public void save(String filename, String filecontent) throws IOException {
		FileOutputStream fos = context.openFileOutput(filename, Context.MODE_PRIVATE);
		fos.write(filecontent.getBytes());
		fos.close();
	}
	
	public String read(String filename) throws IOException{
		FileInputStream fis = context.openFileInput(filename);
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		byte[] b = new byte[1024];
		int len = 0;
		while((len = fis.read(b)) > 0){
			baos.write(b, 0, len);
		}
		byte[] data = baos.toByteArray();
		return new String(data);
	}
}

0
0
分享到:
评论

相关推荐

    android 内存 文件读写操作

    android 通过Environment环境 获取手机根目录 读写 文件操作。

    Android手机内存中文件的读写方法小结

    主要介绍了Android手机内存中文件的读写方法,实例总结了Android针对文件读写操作的相关技巧,非常具有实用价值,需要的朋友可以参考下

    android 存储.txt到本地进行操作

    android 存储.txt到本地进行操作.进行 增删改查。

    在SD卡上划分Android手机内存

    1、先将sd卡插到电脑上,并...3、安装Link2SDV2.1.2.apk到手机中 4、sd卡插回手机,重启手机,执行Link2SD,挂载ext2分区 5、重启手机,以后再安装程序就会安装到ext2分区中 三星S5570手机测试通过,别的手机没测试。

    手机清理和内存加速:Phone Clean

    软件名称: 手机清理和内存加速:Phone Clean ...最新版本:1.6.6.070 支持ROM:2.2及更高版本 界面语言:简体中文 软件大小:3.99 M 开发者:Moboair 方便,安全,准确。...让你的Android手机干干净净,安全,快捷!

    Android 小例子:获取系统信息 文件浏览器.rar

    Android 小例子:获取系统信息 文件浏览器,可以实现以下功能:文件系统,文件浏览器,操作系统版本,读取/proc/version信息,系统信息,手机设备的系统信息,运营商信息,手机网络的运营商信息、正在运行的后台服务...

    百度Android工程师面试题.pdf

    百度 Android 开发面试题 ...sim 卡的文件系统有自己规范,主要是为了和手机通讯,sim 本身可以有自己的操作系统,EF 就是作存储并和手机通讯用的 3、嵌入式操作系统内存管理有哪几种,各有何特性 ? 更多请看文档!

    Android驱动开发权威指南

    第7章Linux设备驱动中的内存与I/O访问 7.1 CPU与内存和I/O之间的故事 7.1.1内存空间与I/O空间 7.1.2内存管理单元MMU 7.2 Linux内存管理 7.3 Linux内存访问 7.4 LinuxI/O访问 7.4.1访问I/O 7.4.2申请与释放I/O资源 ...

    Android最新资料以及源码

    18、Android手机里的滑动条源代码 共1个目标文件!简单。 19、Android团购信息源代码 共8个目标文件!简单的本地数据库操作!~ 20、Android网络交互判断网络连接的例子 共1个目标文件!简单。get方式访问一个url!...

    新版Android开发教程.rar

    这一联盟将会支持 Google 发布的 Android 手机操作系统或者应用软件,共同开发名为 Android 的 开 放源代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类。目前,联盟成员 数 量已经达到了...

    Android 的一些特效

    Android手机连接电脑详细图文教程.doc android横竖屏总结.doc Android 的手势拖动切换ViewViewFlipper.doc Eclipse内存不足的解决办法.doc EditView 阻止软键盘自动弹出.doc HttpClient的一个应用的例子(图片...

    Android的一些特效资料

    Android手机连接电脑详细图文教程.doc android横竖屏总结.doc Android 的手势拖动切换ViewViewFlipper.doc Eclipse内存不足的解决办法.doc EditView 阻止软键盘自动弹出.doc HttpClient的一个应用的例子(图片下载)...

    8941-Android智能手机编程.docx

    若出现 Device、Target 为空或无法选择,包括之前点击"New..."按钮时无效,请执行以下操作: 8941-Android智能手机编程全文共17页,当前为第4页。 8941-Android智能手机编程全文共17页,当前为第4页。 打开 SDK ...

    Android背诵87题-总结.docx

    sim卡的文件系统有自己规范,主要是为了和手机通讯,sim本 身可以有自己的操作系统,EF就是作存储并和手机通讯用的 3、嵌入式操作系统内存管理有哪几种, 各有何特性 页式,段式,段页,用到了MMU,虚拟空间等技术 4...

    《Google Android SDK开发范例大全(第3版)》.pdf

     全书共分11章,主要以范例集的方式来讲述android的知识点,详细介绍了开发android的人机交互界面、android常用的开发控件、android手机收发短信等通信服务、开发android手机的自动服务功能和娱乐多媒体功能以及...

    Google Android SDK开发范例大全(第3版) 1/5

    全书共分11章,主要以范例集的方式来讲述Android的知识点,详细介绍了开发Android的人机交互界面、Android常用的开发控件、Android手机收发短信等通信服务、开发Android手机的自动服务功能和娱乐多媒体功能以及整合...

    android开发实例大全_王东华

    实例046: 操作存储卡和内存卡中的数据 122 实例047: 设置闹钟 129 实例048: 实现黑名单来电自动静音处理 135 实例049: 设置一个自动开机界面 138 实例050: 更换手机屏幕背景图片系统 140 实例051: 设置自动...

    android数据存储之文件存储方法

    文件存储是 Android 中最基本的一种数据存储方式,它不对存储的内容进行任何的... * 这两种方法同sp一样只能讲文件保存到手机内存固定的路径中, * 默认为 /data/data/<packageName>/files */ private void save2Fi

    Android开发与应用——张荣,原书配套课件

    1.1 手机操作系统 1.2 Android起源 1.3 Android特征 1.4 Android体系结构 1.4.1 应用层 1.4.2 应用框架层 1.4.3 系统库层 1.4.4 内核层 1.5 小结 练习 第2章 Android开发环境 2.1 Java开发环境...

    Android高级编程--源代码

     本书面向希望在android手机平台上创建应用程序的所有人员。不管是经验丰富的移动开发人员,还是初出茅庐的新手,都能从本书提供的宝贵信息中获益。 作译者  Reto Meier出生于澳大利西南的珀斯市,现居伦敦。 ...

Global site tag (gtag.js) - Google Analytics