Android 学习笔记 文本文件的读写操作
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" > <Button
android:id="@+id/btn01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="保存" />
<Button
android:id="@+id/btn02"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="读取" /> <TextView
android:id="@+id/msg"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
MainActivity.java
public class MainActivity extends Activity {
    private static final String FILENAME="Test01.txt";
    private Button btn01=null;
    private Button btn02=null;
    private TextView msg=null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.setContentView(R.layout.activity_main);
        this.btn01=(Button)super.findViewById(R.id.btn01);
        this.btn02=(Button)super.findViewById(R.id.btn02);
        this.btn01.setOnClickListener(new OnClickListenerImpl());
        this.btn02.setOnClickListener(new OnClickListenerImpl());
        this.msg=(TextView)super.findViewById(R.id.msg);
    }
    private class OnClickListenerImpl implements OnClickListener{
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.btn01:
                FileOutputStream output=null;
                try {
                    output=MainActivity.this.openFileOutput(FILENAME, Activity.MODE_PRIVATE);
                } catch (FileNotFoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                PrintStream out=new PrintStream(output);
                out.println(sdf.format(new Date()));
                out.println("文本内容aa");
                out.close();
                Toast.makeText(MainActivity.this, "文件已经保存", Toast.LENGTH_SHORT).show();
                break;
            case R.id.btn02:
                FileInputStream input=null;
                try {
                    input=MainActivity.this.openFileInput(FILENAME);
                } catch (FileNotFoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                Scanner scanner=new Scanner(input);
                MainActivity.this.msg.setText("");
                MainActivity.this.msg.append("-------Start--------\n");
                while (scanner.hasNext()) {
                    MainActivity.this.msg.append(scanner.next()+"\n");
                }
                MainActivity.this.msg.append("-------End--------\n");
                Toast.makeText(MainActivity.this, "文件已经读取", Toast.LENGTH_SHORT).show();
                break;
            default:
                break;
            }
        }
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}
如果需要操作SD卡上的文件,需要在AndroidManifest.xml中添加权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Android 学习笔记 文本文件的读写操作的更多相关文章
- Android:日常学习笔记(10)———使用LitePal操作数据库
		Android:日常学习笔记(10)———使用LitePal操作数据库 引入LitePal 什么是LitePal LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式 ... 
- Android学习笔记36:使用SQLite方式存储数据
		在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ... 
- 【转】Pro Android学习笔记(五):了解Content Provider(上)
		Content Provider是抽象数据封装和数据访问机制,例如SQLite是Android设备带有的数据源,可以封装到一个content provider中.要通过content provider ... 
- Windows phone 8 学习笔记(2) 数据文件操作
		原文:Windows phone 8 学习笔记(2) 数据文件操作 Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方 ... 
- udacity android 学习笔记: lesson 4 part b
		udacity android 学习笔记: lesson 4 part b 作者:干货店打杂的 /titer1 /Archimedes 出处:https://code.csdn.net/titer1 ... 
- 【转】 Pro Android学习笔记(七四):HTTP服务(8):使用后台线程AsyncTask
		目录(?)[-] 5秒超时异常 AsyncTask 实现AsyncTask抽象类 对AsyncTask的调用 在哪里运行 其他重要method 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注 ... 
- 【转】 Pro Android学习笔记(六九):HTTP服务(3):HTTP POST MultiPart
		目录(?)[-] 建立测试环境 开发环境导入第三方JAR HTTP Post Multipart小例子 HTTP POST不仅可以通过键值对传递参数,还可以携带更为复杂的参数,例如文件.HTTP Po ... 
- 【转】 Pro Android学习笔记(六七):HTTP服务(1):HTTP GET
		目录(?)[-] HTTP GET小例子 简单小例子 出现异常NetworkOnMainThreadException 通过StrictMode进行处理 URL带键值对 Andriod应用可利用ser ... 
- 【转】 Pro Android学习笔记(五七):Preferences(1):ListPreference
		目录(?)[-] 例子1ListPreference小例子 定义一个preferences XML文件 继承PreferenceActivity 用户定制偏好的读取 第一次运行时设置缺省值 设置Cat ... 
随机推荐
- PyYAML和configparser模块讲解
			Python也可以很容易的处理ymal文档格式,只不过需要安装一个模块,参考文档:http://pyyaml.org/wiki/PyYAMLDocumentation ymal主要用于配置文件. Co ... 
- 张瀚荣:如何用UE4制作3D动作游戏
			转自:http://www.gamelook.com.cn/2015/06/218267 GameLook报道/ 6月5日,2015年第三期GameLook开放日‧虚幻引擎专场活动在上海正式举行,此次 ... 
- 32位机,CPU是如何利用段寄存器寻址的
			转自:http://blog.sina.com.cn/s/blog_640531380100xa15.html 32位cpu 地址线扩展成了32位,这和数据线的宽度是一致的.因此,在32位机里其实并不 ... 
- flask系列九之使用falsk建立项目总结
			待续.... 源码地址:https://gitee.com/FelixBinCloud/ZhiLiaoDemo/tree/master/ZhiLiao 
- RequestParam注解的Url参数被省略时该如何处理
			RequestParam注解的Url参数被省略时该如何处理 1.RequestParam的用法 ==================== RequestParam注解可以把包含在Url中的参数映射到U ... 
- eclipse egit(分支管理 上)
			这一章比较重要,讲述了Git比svn强大的地方,直接转载廖雪峰老师的文字,更好的理解 什么是分支 和 为什么分支git比svn做的更好 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才 ... 
- java Web EL表达式详解
			1.EL表达式的简介 EL表达式是一种JSP技术,能够代替JSP中原本要用Java语言进行显示的语句,使得代码更容易编写与维护.最基本的语法是${express}. 2.获取并显示数据 从四个域中通过 ... 
- codeforce469DIV2——E. Data Center Maintenance
			题意: 有n个数据中心,m个客户,每天有h个小时,其中 n,m,h<=100000.每个数据中心i每天都会有一个数据维护的时间0<=u[i]<=h-1,在数据中心维护期间时不可以使用 ... 
- FastDFS介绍和配置过程 二
			最近在研究负载均衡和集群,其中涉及到一个主要问题是,如何让集群中的real server共享一套文件系统.在网上查到FastDFS,国人(happy fish,感谢他的开源精神)开发的一套轻量级分 ... 
- ubuntu14.04  使用笔记
			这是第二次安装使用ubuntu了,虽然上一次因为不习惯和不会使用一两天就放弃了,这次坚持的时间稍微长一点,目前ubuntu的基本使用也熟悉了.但是由于ubuntu上的应用太少,常用软件,比如QQ,Ph ... 
