activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"><LinearLayoutandroid:layout_width="409dp"android:layout_height="729dp"android:background="@drawable/hui"android:orientation="vertical"tools:layout_editor_absoluteX="1dp"tools:layout_editor_absoluteY="1dp"><EditTextandroid:id="@+id/labelView"android:layout_width="match_parent"android:layout_height="40dp"android:background="@drawable/hui"android:ems="10"android:inputType="textPersonName" /><EditTextandroid:id="@+id/Data"android:layout_width="match_parent"android:layout_height="57dp"android:background="@drawable/bai"android:ems="10"android:inputType="textPersonName" /><Buttonandroid:id="@+id/btnwrite"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="写入文件" /><Buttonandroid:id="@+id/btnread"android:layout_width="match_parent"android:layout_height="wrap_content"android:text=" 读取文件" /><CheckBoxandroid:id="@+id/appendBox"android:layout_width="match_parent"android:layout_height="wrap_content"android:text=" 追加模式" /><TextViewandroid:id="@+id/displayData"android:layout_width="match_parent"android:layout_height="222dp"android:background="@drawable/bai" /></LinearLayout>
</android.support.constraint.ConstraintLayout>

MainActivity.java:

package com.example.lenovo.myapplicationrw;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;
import android.view.View;
import android.widget.EditText;import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class MainActivity extends AppCompatActivity {private  EditText entryData;private Button btnwrite;private  EditText labelView;private  Button btnread;private TextView displayData;private CheckBox appendBox;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);entryData =(EditText)findViewById(R.id.Data);btnwrite = (Button)findViewById(R.id.btnwrite);labelView=findViewById(R.id.labelView);btnread=findViewById(R.id.btnread);displayData=findViewById(R.id.displayData);appendBox=findViewById(R.id.appendBox);btnwrite.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View view) {String filename = "myfile";FileOutputStream fos=null;try{if(appendBox.isChecked()){fos = openFileOutput(filename,MODE_APPEND);}else{fos = openFileOutput(filename,MODE_PRIVATE);}String text=entryData.getText().toString();fos.write(text.getBytes());labelView.setText("写入文件成功,写入长度:"+text.length());entryData.setText("");}catch (FileNotFoundException e){e.printStackTrace();}catch(IOException e){e.printStackTrace();}finally {if(fos!=null){try{fos.flush();fos.close();}catch (IOException e){e.printStackTrace();}}}}});btnread.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View view) {displayData.setText("");String filename = "myfile";FileInputStream fis=null;try{fis=openFileInput(filename);if(fis.available()==0){return;}byte[]readBytes=new byte[fis.available()];while(fis.read(readBytes)!=-1){}String text=new String(readBytes);displayData.setText(text);labelView.setText("文件读取成功,文件长度:"+text.length());}catch(FileNotFoundException e){e.printStackTrace();}catch (IOException e){e.printStackTrace();}}});}}

Android:内部存储(读写文件、追加模式)相关推荐

  1. android获取内部存储卡里的文件,获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径...

    获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径 获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径 sd卡存储外部存储卡路径外部存储卡外部存储卡路径内置存储卡外 ...

  2. android 内部存储 共享,android存储:共享参数、内部存储、拓展存储

    日期16年8月30日学习 一.共享参数: (1).概念: SharedPreferences是Android系统提供的一个通用的数据持久化框架,用于存储和读取key-value类型的原始基本数据类型对 ...

  3. Android基础知识(二十一):Android五大存储之文件存储、Content Provider存储和网络存储

    Android基础知识(二十一):Android五大存储之文件存储.Content Provider存储和网络存储 一.Android存储--持久化技术 数据持久化是指将那些内存中的瞬时数据保存到存储 ...

  4. 解析Android内部存储、外部存储的区别

    1.背景 在开发过程中我们都会使用到手机的内部缓存.外部缓存.但有些开发者对这两个存储区域理解还够透彻,以为手机内置的存储卡(不可手机移除)就是内部存储, 可插拔的SD卡就是外部存储,其实这些理解都是 ...

  5. 如何从 Android 内部存储中恢复已删除的照片?

    我们使用手机录制的照片和视频通常存储在手机的内存中.我们存储它们以记住我们生活的美丽.然而,在管理这些照片的过程中,一些用户却发现自己不小心删除了这些照片,这很尴尬. 如果您的 Android 设备遇 ...

  6. Android内部存储与外部存储(私有目录与公共目录)图文详解

    目录 一.存储空间概述 二.存储空间的划分 1.存储划分 2.内部存储 2.1 内部存储概述 2.2 内部存储 - 私有目录 3. 外部存储 3.1 外部存储概述 3.2 外部存储 - 私有目录 3. ...

  7. Android 数据存储(一)-文件存储

    目录 一.数据存储概念 二.应用程序专属文件存储 2.1 访问持久文件 2.2 将数据存储到文件 2.3 从文件中读取数据 2.4 查看文件列表 2.5 删除文件 三.缓存文件(cache目录下) 3 ...

  8. Android 数据存储和文件使用案例分析

    很多时候我们的软件需要对处理后的数据进行存储或再次访问.Android为数据存储提供了如下几种方式: 文件 SharedPreferences(参数) SQLite数据库 内容提供者(Content ...

  9. Android数据存储之文件存储

    -- 大家都知道,数据和算法是一个应用程序的核心.所以,学好数据存储是非常有必要的. --Android数据的存储有多种方式,比如ContentProvider(内容提供者).SQLite(嵌入式数据 ...

  10. Android数据存储、文件存储、SQLite数据库简单使用、 sharedPreferences存储(五)

    文章目录 5 数据存储 5.1 数据的存储方式 5.2 文件存储 5.2.1 将数据存入文件中 5.2.2 从文件中读取数据 5.2.3 实战演练-保存QQ账号和密码(内部存储) 5.2.4 实战演练 ...

最新文章

  1. 清除vs2003-vs2008起始页最近打开项目
  2. 【项目管理】接手一支技术团队,你会做些哪些事?
  3. Apache Camel 2.12 –支持后退,以减少较积极的轮询路线
  4. 【CodeForces - 485B】Valuable Resources (贪心,水题,几何相关)
  5. Linux学习笔记Sed最全整理
  6. kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap
  7. tensorflow 模型权重导出
  8. tkinter 文本框 值改变_【动图详解】PPT中文本框的使用方法,初学者必看!
  9. Rstudio如何让显示界面的字体更大一些
  10. S3C64xx设备树支持
  11. 计算机是uefi启动 不能装win7,uefi+gpt分区安装win7图文教程 uefi加gpt模式安装win7 64位的方法...
  12. 强力推荐素材收集和管理神器-Eagle工具
  13. 8.2.1 消息通知过时写法解决
  14. MySQL(5)条件查询 | 单行函数 | 事务详解
  15. 手机端 html5 按长按保存图片尺寸,html5移动端禁止长按图片保存的实现
  16. kubeadm部署k8s多master节点的高可用集群
  17. 安装ubuntu 遇到的问题
  18. 全景图下载——chrome插件Pano fetch
  19. 太阳动态ip代理为您详解使用代理ip常见的几个关键点及其解决方案
  20. 关于年份和月份的计算

热门文章

  1. Eclipse设置断点进行调试
  2. 怎么看服务器连接记录_企业微信怎么查看打卡记录?自己和他人的都可以看
  3. 电脑底部任务栏点不动_15个小技巧,让我的Windows电脑更好用了!
  4. foreach循环符合就不往下走了_Java基础入门篇——For循环
  5. java logic逻辑,logicJava的复习
  6. python list索引遍历_在python中遍历dict和list
  7. python装饰器class_PYTHON里的装饰器能装饰类吗
  8. Jmeter简单的登录压力测试(使用json发送post请求)
  9. thymeleaf 获取yml中的值_Thymeleaf前后端传值 页面取值与js取值
  10. python全栈还是大数据好_青岛PYTHON全栈应用开发班