本文实例讲述了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开发之文件操作详解