android 中对文件的IO操作,OpenFileInput OpenFileOutput 返回对象为Java Io 的FileInputStream和FileOutputStream

我们通过一个小例子,来看下是如何使用的

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.ssln.fileoperator.MainActivity" >    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:id="@+id/tvMsg" /></RelativeLayout>

mainactivity.java

package com.ssln.fileoperator;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import org.apache.http.util.EncodingUtils;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public class MainActivity extends Activity {    private String fileName = "text.txt";    private String message = "这是通过OpenFileOupput写出,OpenFileInput读取的内容";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //写出文件        WriteFile();        //查找控件        TextView tvMsg=(TextView)findViewById(R.id.tvMsg);        //读取内容        tvMsg.setText(ReadFile());    }    /**     * 读取文件     *      * @return 读取到的文件内容     */    private String ReadFile() {        FileInputStream inputStream;        byte[] buffer = null;        try {            inputStream = this.openFileInput(fileName);            try {                // 获取文件内容长度                int fileLen = inputStream.available();                // 读取内容到buffer                buffer = new byte[fileLen];                inputStream.read(buffer);            } catch (IOException e) {                e.printStackTrace();            }        } catch (FileNotFoundException e) {            e.printStackTrace();        }        // 返回文本信息        if (buffer != null)            return EncodingUtils.getString(buffer, "utf-8");        else            return "";    }    /**     * 写出文件内容到文件     */    private void WriteFile() {        try {            // 打开文件,该文件只能由调用该方法的应用程序访问            // MODE_PRIVATE 该文件只能由调用该方法的应用程序访问            // MODE_APPEND 如果文件已存在,就在结尾追加内容,而不是覆盖文件            // MODE_WORLD_READABLE 赋予所有应用程序读权限            // MODE_WORLD_WRITEABLE 赋予所有应用程序写权限            FileOutputStream outStream = this.openFileOutput(fileName,                    MODE_PRIVATE);            // 将文本转换为字节集            byte[] data = message.getBytes();            try {                // 写出文件                outStream.write(data);                outStream.flush();                outStream.close();            } catch (IOException e) {                e.printStackTrace();            }        } catch (FileNotFoundException e) {            e.printStackTrace();        }    }}

运行效果

text.txt文件存储在了 data\data\报名\files目录下

更多相关文章

  1. [Android]ListView中分割线的设置
  2. Android拷贝图片到指定文件路径
  3. Android(安卓)P(api28) 不支持 http 协议解决方法
  4. Android(安卓)解析excel文件
  5. android 安卓创建文件夹
  6. Android(安卓)Contacts(一)—— 读取联系人
  7. 读取Android设备的MAC地址
  8. 使用FragmentTabHost时,tabwidget被frament覆盖。
  9. AndroidManifest.xml 系统找不到指定的文件

随机推荐

  1. Android的三种网络通信方式
  2. Android(安卓)Studio 导入别人的项目
  3. Android(安卓)Framework启动过程(android
  4. 介绍两个Android开源项目:Android显示GIF
  5. android push机制-C2DM
  6. Android(安卓)CountDownTimer实现定时器
  7. 定制Android的Home
  8. android的九宫格式实现
  9. Android系统权限和root权限
  10. Android(安卓)O指纹识别解析