Android文件存储编程实验,Android编程中File文件常见存储与读取操作demo示例
本文实例讲述了Android编程中File文件常见存储与读取操作。分享给大家供大家参考,具体如下:
MainActivity文件代码如下:
package example.com.myapplication;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.PrintStream;
public class MainActivity extends Activity
{
final String FILE_NAME = "test.txt";
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.println(new StringBuilder("a").append("b").append("c")
.toString());
// 获取两个按钮
Button read = (Button) findViewById(R.id.read);
Button write = (Button) findViewById(R.id.write);
// 获取两个文本框
final EditText edit1 = (EditText) findViewById(R.id.edit1);
final EditText edit2 = (EditText) findViewById(R.id.edit2);
// 为write按钮绑定事件监听器
write.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View source)
{
// 将edit1中的内容写入文件中
write(edit1.getText().toString());
edit1.setText("");
}
});
read.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
// 读取指定文件中的内容,并显示出来
edit2.setText(read());
}
});
}
private String read()
{
try
{
// 打开文件输入流
FileInputStream fis = openFileInput(FILE_NAME);
byte[] buff = new byte[1024];
int hasRead = 0;
StringBuilder sb = new StringBuilder("");
while ((hasRead = fis.read(buff)) > 0)
{
sb.append(new String(buff,hasRead));
}
return sb.toString();
}
catch (Exception e)
{
e.printStackTrace();
}
return null;
}
private void write(String content)
{
try
{
// 以追加模式打开文件输出流
FileOutputStream fos = openFileOutput(FILE_NAME,MODE_APPEND);
// 将FileOutputStream包装成PrintStream
PrintStream ps = new PrintStream(fos);
// 输出文件内容
ps.println(content);
ps.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
布局文件代码如下:
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:id="@+id/edit1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lines="4"/>
android:id="@+id/write"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="write"/>
android:id="@+id/edit2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:editable="false"
android:lines="4"/>
android:id="@+id/read"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="read"/>
希望本文所述对大家Android程序设计有所帮助。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
Android文件存储编程实验,Android编程中File文件常见存储与读取操作demo示例相关推荐
- java建立新文件保存数据_关于java中创建文件,并且写入内容
packagecom.file.run;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInputStream;im ...
- VBA遍历文件夹及子文件夹中所有文件
VBA中遍历文件方法很多,但很多方法又有局限,DIR的方法很难遍历子文件夹文件.FileSearch方法在office 2007中MS把Application对象FileSearch方法删除了.所有我 ...
- linux应用编程和网络编程-3.1.linux中的文件IO(read write open lseek)系统文件管理 inode 3种退出 fd 文件共享
基本文件API读写 文件IO的标准IO比较 文件IO read和write open及flag lseek 3种exit.error.perror linux系统文件管理 文件描述符filedescr ...
- android 打包 混淆配置_android 实际项目中混淆文件的配置(参考做法)
之前对项目混淆一直了解不是很透,趁着打包正式项目的时候有特意的去了解了一番,做些记录,备忘! -optimizationpasses 5 -dontusemixedcaseclassnames -do ...
- android apk 修改 签名文件位置,更改APK中图标文件,签名后重新安装
昨天在使用一款录屏软件APK时,发现有默认的水印,想把水印去掉,或者换成自己的水印.啰嗦几句,免得有人走了我的误区,可以跳过直接进步骤.试了几种办法,包括解压APK包,找资源文件res,没有发现水印的 ...
- python中文件的打开与关闭_python中的文件打开与关闭操作命令介绍
python中的文件打开与关闭操作命令介绍 1.文件打开与关闭 在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件 open(文件名,访问模式). f = open('t ...
- Java IO流中 File文件对象与Properties类(四)
File类 用来将文件或目录封装成对象 方便对文件或目录信息进行处理 File对象可以作为参数传递给流进行操作 File类常用方法 创建 boolean createNewFile():创建新文件,如 ...
- java 改变文件路径_在C#中改变文件路径
我正在创建C#Windows窗体,它从共享驱动器中检索文件作为电子邮件附件 . 我试图自动化文件检索过程,但我可用的文件路径根据日期而有所不同 . 例如: V:\....\Dec-03\filenam ...
- 计算机管理文件的教学设计,《管理计算机中的文件》教学设计文件.doc
管理计算机中的文件 教 学 设 计 一.教学任务 1. 查找文件和文件夹的方法. 2. 掌握文件和文件夹复制.移动.删除操作. 3. 培养学生进行自主学习.协作学习的能力. 二.教学重点 1.查找文件 ...
最新文章
- 【微信小程序】之如何创建底部菜单?tabBar、mp-tabbar
- 《预训练周刊》第14期:World-GAN:Minecraft 世界的生成模型、CMU博士论文探究可控文本生成...
- 贝佐斯旗下媒体爆料:亚马逊因言废人,不管啥岗位,抗议就走人
- ios 开发框架原始雏形 01
- 女士细线毛衣起多少针_从起针到缝合,教你织毛衣的各种要点(详细教程)
- python字符串转化列表_Python列表到字符串的转换
- 程序员面试题之解读构造函数
- 数据预处理第4讲:缺失值填补
- 【转】windows操作系统同步 (Critical Section,Mutex,Semaphore,Event Object,Interlocked Variable)...
- 理解线程/多线程处理数组(MultiThreaded dealing with arrays)
- abap 创建出口历程_(发展战略)ABAP历史发展
- 通过身份证号码进行归属地的查询、出生日期,以及判断性别(升级版)
- 程序员出身的史玉柱,曾写了50万行代码,他的编程水平怎样?
- java 函数 throw_java为什么有些异常throw出去需要在函数头用throws声明,一些就不用。...
- win10下装python
- 超级电容模组电压不均衡特性分析
- 智能制造学习纪录片和书籍
- STM32的RTC管脚作为Tamper使用(RTC-TAMPER)
- 线性代数及矩阵论(十一)
- ospf不连续区域网络互通
热门文章
- python对文本文件的读写
- OneTab和BdTab的标签管理对比
- 喜大普奔,又一国标正式进入国际标准
- rrpp协议如何修改_华为交换机—RRPP协议
- odoo中关于打印word格式的文件,利用docxtemplate方法
- python调研报告总结体会_调查报告的心得体会
- python分句_Python 中文分句 | 学步园
- onload的具体使用
- myftpadmin+proftpd+mysql架设ftp服务器_配置proftpd-admin管理proftpd服务器
- mfc 中如果存在sleep延时后按钮无法响应解决方案