Android开发之文件操作详解

  

本文实例讲述了Android开发之文件操作。分享给大家供大家参考,具体如下:

  

目前,几乎所有的设备都会涉及到文件的操作,例如什么电脑,手机等设备.Android的文件操作和电脑是比较类似的,既可以存储在手机内置的存储器里也可以是sd卡。在这篇文章里主要介绍在手机内置存储器里的文件操作。

  

  

(1)界面的设计
  (2)设计android的业务层
  (3)单元测试
  (4)设置android的控制器层

  

  

(1)设计软件界面

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; LinearLayout xmlns: android=" http://schemas.android.com/apk/res/android "   android:取向=按怪薄?   android: layout_width="宽和"   android: layout_height="宽和"   比;   & lt; TextView   android: layout_width="宽和"   android: layout_height=" wrap_content "   android:文本=" @string/文件名”/比;   EditText & lt;   android: layout_width="宽和"   android: layout_height=" wrap_content "   android: id=癅 + id/文件名”/比;   & lt; TextView   android: layout_width="宽和"   android: layout_height=" wrap_content "   android:文本=" @string/内容”/比;   EditText & lt;   android: layout_width="宽和"   android: layout_height=" wrap_content "   android: id=癅 + id/内容”   android: minLines=" 3 "/比;   & lt;按钮   android: layout_width=" wrap_content "   android: layout_height=" wrap_content "   android:文本=" @string/按钮”   android: id=癅 + id/按钮”/比;   & lt;/LinearLayout>      之前      

这里也把R文件给大家看看

     /*自动生成的文件。不要修改。   *   *这类自动生成的   从资源数据发现* aapt工具。它   *不应该手工修改。   */包org.lxh.file;   最后公共类R {   公共静态最终类attr {   }   公共静态最终类可拉的{   公共静态最终int图标=0 x7f020000;   }   公共静态最终类id {   公共静态最终int按钮=0 x7f050002;   公共静态最终int内容=0 x7f050001;   公共静态最终int文件名=0 x7f050000;   }   公共静态最终类布局{   公共静态最终int主要=0 x7f030000;   }   公共静态最终类字符串{   公共静态最终int app_name=0 x7f040001;   公共静态最终int按钮=0 x7f040004;   公共静态最终int内容=0 x7f040003;   公共静态最终int=0 x7f040006失败;   公共静态最终int文件名=0 x7f040002;   公共静态最终int你好=0 x7f040000;   公共静态最终int成功=0 x7f040005;   }   }      之前      

(2)设计业务层

        包org.lxh.service;   进口java.io.ByteArrayOutputStream;   进口java.io.FileInputStream;   进口java.io.FileOutputStream;   进口android.content.Context;   进口android.util.Log;   公开课FileService {   私人上下文语境;   公共FileService(上下文语境){//通过构造方法传入上下文   这一点。上下文=上下文;   }//保存文件   公共空间saveFile(文件名字符串,字符串内容)抛出异常{//异常交给调用处处理   FileOutputStream=上下文。openFileOutput(文件名,Context.MODE_PRIVATE);   out.write (content.getBytes ());   out.close ();   }   readFile公共字符串(字符串文件名)抛出异常{//异常交给调用处处理   在=FileInputStream context.openFileInput(文件名);   新字节字节b []=[1024];   int len=0;   ByteArrayOutputStream数组=new ByteArrayOutputStream ();   在((len=in.read (b)) !=1){//开始读取文件   array.write (b, 0, len);   }   字节数据[]=array.toByteArray ();//把内存里的数据读取出来   in.close ();//每个流都必须关闭   array.close ();   返回新字符串(数据);//把字节数组转换为字符串并返回   }   }      之前      

下面开始做单元测试,要添加的环境就不说了

        包org.lxh.test;   进口org.lxh.service.FileService;   进口android.test.AndroidTestCase;   进口android.util.Log;   公共类测试扩展AndroidTestCase {   公共静态最终字符串标签=安馐浴?   公共空间testSave () {   FileService服务=new FileService (this.getContext ());   尝试{   service.saveFile (“01。txt”、“你好”);   }捕捉(异常e) {   日志。我(标签,e.getMessage ());   }   }   公共空间testRead () {   FileService服务=new FileService (this.getContext ());   尝试{   Log.i(标签,service.readFile (“01. txt”));   }捕捉(异常e) {   日志。e(标签,e.getMessage ());   }   }   }      

Android开发之文件操作详解