一起Talk Android吧(第二百一十九回:Android中的数据存储之文件三)

Android文件读写详解
本文深入探讨了在Android中使用openFileInput()和FileOutputStream()进行文件读写的操作方法。详细讲解了文件写入的步骤,包括定义文件名、创建输出流、转换为缓冲流、写入内容及关闭流等过程。

各位看官们大家好,上一回中咱们说的是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中数据存储之文件的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值