在开发Android应用时有时会用到Input/OutputStream,这两个流的作用分别是读取文件内容,写入文件内容,其中需要注意两点:

1)注意文件的编码格式,一般使用utf-8

2)写入和读取的文件时存储在内存中的,所以对文件的大小有所限制

下面这个例子实现的是:

读取编辑框中输入的内容存储到文件file.txt中,之后读取文件中的内容,实现的截图如下所示:

实现的代码如下所示:

public class OutInputStream_Activity_Test extends Activity {private Button button;private Button button2;private EditText editText;private TextView textView;String string;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_out_input_stream__activity__test);button=(Button)findViewById(R.id.button1);button2=(Button)findViewById(R.id.button2);editText=(EditText)findViewById(R.id.edittext);textView=(TextView)findViewById(R.id.textview);button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubOutputStream os = null;try {os = openFileOutput("file.txt", Activity.MODE_PRIVATE);} catch (FileNotFoundException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}string=editText.getText().toString();try {os.write(string.getBytes("utf-8"));editText.setText("");} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}});button2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubtry {InputStream is=openFileInput("file.txt");byte [] buffer=new byte[100];int byteCount=is.read(buffer);String string=new String(buffer, 0, byteCount, "utf-8");textView.setText(string);is.close();} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}   }});}
}

Android开发--Input/OutputStream操作相关推荐

  1. android 开发使用adb操作sqlite

    android 开发使用adb操作sqlite. 1.启动模拟器或连接android实体机 2.在命令行输入:adb shell 3.进入目录:data/data/应用程序包名/databases/ ...

  2. Android开发--Wifi的操作

    Android应用程序测试Wifi非常简单,只需要调用系统的Wifi服务即可对Wifi进行管理,但是由于模拟器中不能使用Wifi的功能,所以测试的操作需要在手机上运行,下面是实例代码: public ...

  3. android开发realm多线程操作,数据库的设计:深入理解 Realm 的多线程处理机制

    你已经阅读过 Realm 关于线程的基础知识.你已经知道了在处理多线程的时候你不需要关心太多东西了,因为强大的 Realm 会帮你处理好这些,但是你还是很想知道更多细节-- 你想知道在 Realm 的 ...

  4. Android开发--文件系统中的内部存储和外部存储最全解析 附文件数据保存操作封装

    文件存储 前言 文件存储 内存 内部存储 外部存储 内部存储操作 API 读写操作 外部存储操作 公共目录 私有目录 私有文件 私有缓存 文件各种操作封装 前言 众所周知,数据存储在每个应用中都会用到 ...

  5. android handler 主线程吗,[android开发]非主线程进行handler操作

    [android开发]非主线程进行handler操作 (2012-10-30 16:26:01) 标签: 杂谈 android默认对主线程创建有消息队列及looper(looper是对消息队列的操作类 ...

  6. Android开发7:简单的数据存储(使用SharedPreferences)和文件操作

    前言 啦啦啦~大家好,又见面啦~ 本篇博文讲和大家一起完成一个需要注册.登录的备忘录的,一起学习 SharedPreferences 的基本使用,学习 Android 中常见的文件操作方法,复习 An ...

  7. Android开发 ---如何操作资源目录中的资源文件2

    Android开发 ---如何操作资源目录中的资源文件2 一.颜色资源管理 效果图: 描述: 1.改变字体的背景颜色 2.改变字体颜色 3.改变按钮颜色 4.图像颜色切换 操作描述: 点击(1)中的颜 ...

  8. Android开发笔记(一百七十五)利用Room简化数据库操作

    虽然Android提供了数据库帮助器,但是开发者在进行数据库编程时仍有诸多不便,比如每次增加一张新表,开发者都得手工实现以下代码逻辑: 1.重写数据库帮助器的onCreate方法,添加该表的建表语句: ...

  9. Android开发笔记(三十二)文件基础操作

    File类 File类是java中的文件操作工具类,它的常用方法如下: File构造函数 : 根据文件路径构造File对象 delete : 删除文件 exists : 判断文件是否存在 getNam ...

最新文章

  1. Linux BSP非标准HDMI分辨率
  2. 排除万难,我终于入了程序员的坑!
  3. Altium Designer-Net has no driving source解决办法
  4. 虚拟化概述及VMware VSphere介绍(一)
  5. FloatingActionButton完美显示
  6. python画图数据的平均值怎么算的_Python气象数据处理与绘图(2):常用数据计算方法...
  7. NFC服务器在Linux,linux 安装 libnfc ,打开串口PN532
  8. 如何踢掉 sql 语句中的尾巴,我用 C# 苦思了五种办法
  9. python中的可迭代对象
  10. 攻防世界web2(逆向加密算法)
  11. matlab中如何表示线积分,MATLAB - 复杂的线/路径积分
  12. 热烈祝贺我刊主编郑纬民教授被提名为中国工程院2017年院士增选候选人!
  13. WinForm客户端限速下载(C#限速下载)
  14. 【算法笔记+POJ3461】Oulipo(字符串hash模版)
  15. 直流稳压电源设计(单相)_电力电子课程设计
  16. 软件测试中的测试文档
  17. 数学边界(数学萌芽、初等数学、高等数学)
  18. 机器人开发--有刷电机 与 无刷电机
  19. 分享一个微信扫码连wifi项目
  20. Chrome 安装插件 win10 Edge 安装 位置

热门文章

  1. MSIL 教程(二):数组、分支、循环、使用不安全代码和如何调用Win32 API(转)...
  2. 项目百态:软件项目管理面面观
  3. nginx 配置文件
  4. Javascript 中变更Html标签label的文本
  5. vSphere ESXi命令行使用方法详解
  6. java9系列(八)Multi-Release JAR Files
  7. wordpress-4.7.2-zh_CN页面加载慢
  8. 云计算&大数据 “下一幕”智能变革之力
  9. 转: 用css把图片转为灰色图
  10. http://q.cnblogs.com/q/54251/