Android 文件写入 和 读取
学习自:Android 第一行代码。
Overview
Android 文件的操作是比较重要的,文件的操作大概有两个,一个是文件的写入。一个文件的读取。Android 的文件的操作有什么用处呢。它可以帮助我们的程序进行基础的数据作为软件基础设置,以及大数据的写入和作为离线数据的基础数据。
Android 文件写入
Android 文件写入大致分为两种,一个是追加写入,一个是覆盖写入。
我看先看一下源代码:
public static String writeData(String fileName, String content, Context context, int mode) {
try {
OutputStreamWriter outputStreamWriter;
if (mode == 1)
outputStreamWriter = new OutputStreamWriter(context.openFileOutput(fileName, Context.MODE_PRIVATE));
else
outputStreamWriter = new OutputStreamWriter(context.openFileOutput(fileName, Context.MODE_APPEND));
outputStreamWriter.write(content);
outputStreamWriter.close();
Log.d("DataWrite", "Success!");
return "1";
} catch (Exception ex) {
ex.printStackTrace();
return "0";
}
}
这个我是写在Global的软件帮助类来进行构造的。
第一我们看一下:
我们的参数列表:
- 写入文件名
- 目标写入文本
- 调用窗体的Content
- 最后是我们的MODE 分别为:1 or Other
- 1为我们的覆盖写入, Other 为 追加写入
然后我们根据我们的源码来做个基础的分析:
- 我们创建了一个
OutputStreamWriter
- 然后我们根据我们的写入的模式,去实例化我们的
OutoutStreamWriter
- 这边的写入模式分为两种:
MODE_PRIVATE
ORMODE_APPEND
很简单,一个是覆盖写入,一个是文件追加写入。 - 然后我们通过
OutputStreamWriter
将别写入文本写入进去。 - 最后关闭
OutputStreamWriter
。
Android 文件读取
我们看一下源码:
public static String ReaderData(String fileName, Context context) {
String ret = "";
try {
InputStream inputStream = context.openFileInput(fileName);
if (inputStream != null) {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String temp = "";
StringBuilder builder = new StringBuilder();
while ((temp = bufferedReader.readLine()) != null) {
builder.append(temp);
}
return builder.toString();
}
} catch (Exception ex) {
ex.printStackTrace();
}
return "";
}
我们先是看一下我们的参数列表。
- 被读取文件名
- 调用活动的Context
我们根据我们的源码来看一下讲解一下我们如何在android 进行文件读取的
这边我们还是一样是该方法用于程序的Global的帮助类。
- 首相实例化一个我们的
InputStream
并将我们的被读取文件打开。 - 判断我们的被读取文件是不是为空。
- 实例化
InputStramReader
进行文件读取。 - 接着的过程就和我Http的GET方法一样,这边不做过多的讲解。
这样不过我们的文件在Android 中的 读取和写入就完成了。