Android之文件操作和JUnit
来源:互联网 发布:淘宝卡西欧卖表带吗 编辑:程序博客网 时间:2024/06/05 18:29
1>写一个文件保存和读取的应用程序。和javaEE一样MVC的设计模式,在android里M应该是Service层,那么Service层和view层应该可以并行开发。因为程序比较简单,我就先写view了。
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextViewandroid:id="@+id/fileNameLabel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/fileNameLabel" /><EditTextandroid:id="@+id/fileNameEdit" android:layout_width="fill_parent" android:layout_height="wrap_content" /><TextViewandroid:id="@+id/fileTxtLabel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/fileTxtLabel" /><EditTextandroid:id="@+id/fileTxtEdit" android:layout_width="fill_parent" android:minLines="3" android:layout_height="wrap_content" /> <Buttonandroid:id="@+id/fileSaveBtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/fileSaveBtn" /></LinearLayout>
2>然后是Service层。
package com.duantl.service;import java.io.FileOutputStream;import android.content.Context;public class FileService {private Context context;public FileService(Context context) {this.context = context;}/** * 以私有模式输出文件内容 * @param fileName * @param content * @throws Exception */public void save(String fileName, String content) throws Exception {FileOutputStream outStream = context.openFileOutput(fileName, Context.MODE_PRIVATE);outStream.write(content.getBytes());outStream.close();}}
3>再写控制层之前,先用JUnit进行测试。
package com.duantl.file;import android.test.AndroidTestCase;import com.duantl.service.FileService;public class FileServiceTest extends AndroidTestCase {public void saveTest() throws Exception {FileService fileService = new FileService(this.getContext());fileService.save("www.txt", "wangguan");}}
当然别忘记了改AndroidManifest.xml,添加JUnit配置
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.duantl" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <uses-library android:name="android.test.runner" /> <activity android:name="file.MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.duantl" android:label="Tests for My App" /></manifest>
4>测试成功,那么好,就开始控制层。
package com.duantl.file;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;import com.duantl.service.FileService;public class MainActivity extends Activity { /** Called when the activity is first created. */private EditText fileNameEdit = null;private EditText fileTxtEdit = null;private Button fileSaveBtn = null;private FileService fileService; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); fileNameEdit = (EditText)this.findViewById(R.id.fileNameEdit); fileTxtEdit = (EditText)this.findViewById(R.id.fileTxtEdit); fileSaveBtn = (Button)this.findViewById(R.id.fileSaveBtn); fileSaveBtn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubString fileNameStr = fileNameEdit.getText().toString();String fileTxtStr = fileTxtEdit.getText().toString();fileService = new FileService(MainActivity.this);try {fileService.save(fileNameStr, fileTxtStr);Toast.makeText(MainActivity.this, R.string.success, Toast.LENGTH_LONG).show();} catch (Exception e) {// TODO Auto-generated catch blockToast.makeText(MainActivity.this, R.string.error, Toast.LENGTH_LONG).show();e.printStackTrace();}}}); }}
写功能就写好了,,那么看看读取的功能。。。
- Android之文件操作和JUnit
- JUnit 和 Android JUnit
- Android 单元测试之JUnit和Mockito
- Android之文件操作
- Android之JUnit深入浅出
- Android之JUnit测试
- Android单元测试之JUnit
- Android之JUnit
- Android 单元测试之JUnit
- Android之再谈文件操作和SDcard读写
- Android编程之文件操作
- Android基础之文件操作
- Android 应用之文件操作
- Android学习之文件操作
- android 进阶之文件操作
- Android开发入门之JUnit
- android学习之-Junit测试
- android自动化测试之Junit
- 用Delphi开发过滤特定网址的BHO插件
- 导致Asp.Net站点重启的10个原因
- 为什么我们程序员难晋升
- C# 实现文件锁
- ODS介绍
- Android之文件操作和JUnit
- 1830 双塔问题
- 1836 永真公式的验证
- 虚拟服务器备份相互适应
- 1837 3行n列棋盘不同完美覆盖的计数
- valgrind使用手册
- win7系统:ireport启动报异常 java.lang.NullPointerException,java环境变量已经正确配置
- Delphi 的运算符列表
- windows搜索含有词组的文件