Android 开发 保存文件app
来源:互联网 发布:手机淘宝改中差评 编辑:程序博客网 时间:2024/06/06 18:24
//开发一个app使其可以保存txt文件
实现应用界面
Strings
<?xml version="1.0" encoding="utf-8"?><resources> <string name="app_name">文件操作</string> <string name="tip1">File name</string> <string name="tip2">File</string> <string name="button">Save</string> <string name="success">Success!</string> <string name="fail">Fail</string></resources>
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/tip1" /> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/filename" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/tip2" /><EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/filecontent" android:minLines="3" /><Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/button" android:id="@+id/Button" /> </LinearLayout>
FileActivity中设置按钮点击事件。
点击时,找到两个文本输入框,得到文件名称和文件内容。
实现文件的保存的方法save,应属于service类(业务类)
创建该类FileService,放在service包内
保存完成后需要用Toast提示用户保存完成
此时,FileActivity代码基本完成
Java中I/O技术
通过contex.openFileOutput(文件名称,操作模式)快速得到一个输出流对象
*文件的操作模式
私有操作模式MODE_PRIVATE
文件只能被本应用访问,再次写入时候是覆盖原文件内容
其它应用无法读取和写入数据
追加操作模式MODE_APPEND
文件只能被本应用访问。再次写入是以追加方式写入文件内容
MODE_WORLD_READABLE
创建的文件可以被其它应用读取。但不能被其它应用写入。
MODE_WORLD_WRITEABLE
创建的文件可以被其它应用写入。但不能被其它应用读取。
所以可以用 MODE_WORLD_READABLE+READABLE_WORLD_WRITEABLE
把传入save的字符串转换为二进制写入,用write()方法
如果调用默认方法,默认使用utf-8编码
然后关掉流
对save方法设置例外抛出
在MianActivity中捕获例外
如果成功,提示用户保存成功
如果捕获例外,提示用户保存失败
代码:
FileActivity
package cn.itcast.files;import cn.itcast.service.FileService;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class FileActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button button = (Button)this.findViewById(R.id.Button); button.setOnClickListener(new ButtonClickListener()); } private class ButtonClickListener implements View.OnClickListener {public void onClick(View v) {EditText filenameText = (EditText)findViewById(R.id.filename);EditText filecontentText = (EditText)findViewById(R.id.filecontent);String filename = filenameText.getText().toString();String filecontent = filecontentText.getText().toString();FileService service = new FileService(getApplicationContext());try {service.save(filename,filecontent);Toast.makeText(getApplicationContext(), R.string.success, 1).show();} catch (Exception e) {Toast.makeText(getApplicationContext(), R.string.fail, 1).show();e.printStackTrace();}} } }
FileService
package cn.itcast.service;import java.io.FileNotFoundException;import java.io.FileOutputStream;import android.content.Context;public class FileService {/* * */private Context context ;public FileService(Context context) {this.context = context;}public void save(String filename, String filecontent) throws Exception {FileOutputStream outStream = context.openFileOutput(filename, context.MODE_PRIVATE);outStream.write(filecontent.getBytes());outStream.close();}}
系统默认将文件保存在data/data/包名/files
文件的访问与修改权限由文件操作模式决定
0 0
- Android 开发 保存文件app
- Android开发APP应该忽略的文件
- IOS App文件保存目录
- Android app日志保存功能
- Android开发入门之文件的保存与读取
- android 文件保存!Sdcard !
- android保存文件
- Android培训---保存文件
- android文件保存
- android文件的保存
- Android Developers:保存文件
- Android Developers:保存文件
- Android应用文件保存
- Android 保存到文件
- android 文件保存数据
- Android Studio 文件保存
- Android保存文件
- Android 保存文件路径
- 【UML】学习笔记(1)——初识UML
- 选
- wifi网络结构(下)
- 数据库分区
- hdu1175 连连看(DFS)
- Android 开发 保存文件app
- 嵌入式WIFI与普通WIFI的区别
- POJ 2226 Muddy Fields
- wifi网络接入原理(上)——扫描Scanning
- 八大排序算法
- Matlab中的静态变量和全局变量
- 关于Harris角点检测的实现
- wifi网络接入原理(中)——认证Authentication
- c#中的ref、out、params参数