界面截图

布局文件

<?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/labelFileName" />    <EditText        android:id="@+id/fileName"        android:layout_width="fill_parent"        android:layout_height="wrap_content" />    <TextView        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:text="@string/labelFileContext" />    <EditText        android:id="@+id/fileContext"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:lines="3" />    <Button        android:id="@+id/saveBtn"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/saveBtn" /></LinearLayout>

string文件

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">文件保存</string>    <string name="labelFileName">文件名称</string>    <string name="labelFileContext">文件内容</string>    <string name="saveBtn">保存文件</string>    <string name="success">文件保存完成</string>    <string name="fail">文件保存失败</string></resources>

Activity类

package com.webyun.app;import com.webyun.app.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 AndroidFileOpeActivity extends Activity {    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                //根据ID查找文件保存按钮        Button saveFileBtn = (Button)this.findViewById(R.id.saveBtn);        //为文件保存按钮设置点击事件        saveFileBtn.setOnClickListener(new ButtonClickListener());    }        private final class ButtonClickListener implements View.OnClickListener{@Overridepublic void onClick(View v) {//根据ID查找文件名输入框控件EditText fileName = (EditText)findViewById(R.id.fileName);//根据ID查找文件内容输入框控件EditText fileContext = (EditText)findViewById(R.id.fileContext);//获取用户输入的文件名String fileNameStr = fileName.getText().toString();//获取用户输入的文件内容String fileContextStr = fileContext.getText().toString();//调用业务类的文件保存方法,保存文件FileService fileService = new FileService(getApplicationContext());try {fileService.save(fileNameStr, fileContextStr);//提示文件保存成功Toast.makeText(getApplicationContext(), R.string.success, Toast.LENGTH_LONG).show();} catch (Exception e) {//提示文件保存失败Toast.makeText(getApplicationContext(), R.string.fail, Toast.LENGTH_LONG).show();e.printStackTrace();}}        }}

业务类FileService

package com.webyun.app.service;import java.io.ByteArrayOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import android.content.Context;public class FileService {/** * 应用上下文对象 */private Context context;public FileService(Context context) {this.context = context;}/** * 保存文件,文件将默认保存在:/data/data/应用所在包/files/ * @param fileNameStr文件名称 * @param fileContextStr文件内容 */public void save(String fileNameStr, String fileContextStr) throws Exception {/** * 私有操作模式: * 创建出来的文件只能被本应用访问,其他应用无法访问该文件。 * 另外采用私有操作模式创建的文件,写入文件中的内容会覆盖原文件的内容。 */FileOutputStream outputStream = this.context.openFileOutput(fileNameStr, Context.MODE_PRIVATE);outputStream.write(fileContextStr.getBytes());outputStream.close();}/** * 读取文件内容 * @param fileName文件名称 * @return文件内容 * @throws Exception */public String read(String fileName) throws Exception {//默认从:/data/data/应用所在包/files/下读取文件FileInputStream inputStream = this.context.openFileInput(fileName);ByteArrayOutputStream outputStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = 0;while((len = inputStream.read(buffer)) != -1){//将数据写入到内存输出流中outputStream.write(buffer, 0, len);}byte[] data = outputStream.toByteArray();return new String(data);}}

更多相关文章

  1. 安卓各文件存储路径汇总(Android(安卓)file path)
  2. android studio 3.6.1导入项目报错(无法下载classpath里的内容)
  3. android studio 遇到的问题汇总
  4. android过滤隐藏文件FileFilter
  5. Android(安卓)用ScrollView和HorizontalScrollView同时实现上下
  6. 【Android】Zip文件解压方法
  7. 49 Android(安卓)fragment 自定义适配器adapter
  8. Android(安卓)- 购物车页面【仿】淘宝App
  9. NPM 和webpack 的基础使用

随机推荐

  1. Android的通知栏点击后无反应解决办法
  2. Android(安卓)调试桥
  3. Windows环境下Android(安卓)Studio系列3
  4. Android缩放图片Bitmap、Drawable
  5. Android(安卓)乱七八糟
  6. android progressbar 显示两个进度样式的
  7. 解决Android中No resource found that ma
  8. Android(安卓)EditText 多行,滚动条 等
  9. Android(安卓)UI布局中设置了fill_parene
  10. android 接听和挂断实现方式