各位看官们大家好,上一回中咱们说的是Android中数据存储之文件的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!
看官们,我们使用两个章回的内容介绍了文件的读写操作,不过这些操作是使用Java的API进行的,如果大家熟悉Java IO的话很容易理解我们的代码,不熟悉也不要紧,可以回头看看我们本专栏的博客,我们专门介绍过java中的文件操作。
有看官说,Android有没有提供读写操作的API呢?回答是有。它提供了openFileInput()和FileOutputStream()两个方法来创建输入输出流。接下来我们介绍如何使用这两个方法来进行文件操作。首先介绍的文件写操作:
- 1.定义一个文件名称,名称中不能包含任何文件路径信息;
- 2.使用openFileOutput()函数创建输出流;
- 3.把输出流转换为输出缓冲流;
- 4.使用缓冲流的write方法把内容写入文件;
- 5.关闭缓冲流,关闭也要处理异常。关闭操作可以放在上一步骤的终结器中(finally)显得代码整洁;
看官们,为了代码整洁,我们把步骤2到5的内容都放到了一个方法中,下面是该方法的代码,请大家参考:
public void WriteDataByAndroid() {
String content = "this is the content of file.";
FileOutputStream file = null;
BufferedWriter bufferedWriter = null;
try{
file = openFileOutput(mFileName, Context.MODE_APPEND);
bufferedWriter = new BufferedWriter(new OutputStreamWriter(file));
bufferedWriter.write(content);
Log.i(TAG, "WriteDataByAndroid: ");
}catch (IOException e){
e.printStackTrace();
}finally {
if(bufferedWriter != null) {
try {
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
关于以上的代码有几点需要注意一下:
- openFileOutput方法需要的文件名中不能带有路径;因为它默认把路径设置为:
data/data/<packagename>/files/;程序运行后会在该路径生成一个文件; - 它的第二个参数是文件访问权限,权限有多种,大家可以参考文官文档介绍。我觉得这样的操作类似Linux文件操作权限,比Java的API要好一些。
- 创建输出流以后的文件操作和使用Java API进行文件操作一样。
各位看官,关于Android中数据存储之文件的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!
Android文件读写详解
本文深入探讨了在Android中使用openFileInput()和FileOutputStream()进行文件读写的操作方法。详细讲解了文件写入的步骤,包括定义文件名、创建输出流、转换为缓冲流、写入内容及关闭流等过程。
8479

被折叠的 条评论
为什么被折叠?



