`
android_mylove
  • 浏览: 399782 次
社区版块
存档分类
最新评论

Android学习笔记(11)————Android的私人文件夹的文件读写操作

 
阅读更多

/********************************************************************************************
* author:conowen@大钟
* E-mail:conowen@hotmail.com
* http://blog.csdn.net/conowen
* 注:本文为原创,仅作为学习交流使用,转载请标明作者及出处。

********************************************************************************************/


Android数据存储

Android的文件数据存储方式有几种方式,如Shared Preferences、Network、SQlite、File……

而File存储又可以以存放的位置分为,存放于应用程序的私有文件夹和SDcard目录里面。

今天就简单说说Android应用程序对私有文件夹的读写操作。

私有文件的存储

一个应用程序的私有文件夹位于/data/data/"应用程序的包名"/files文件夹下面。打开eclipse的DDMS可以通过查看File Explorer找到文件。

创建之后用户具有读写的权限,默认情况下,该文件是不能被其他应用程序访问的,但是可以更改权限。应用程序安装之后,可在Android“设置”选项里面清除该应用程序的数据。通过openFileOutput(String filename,mode)和openFileInput(String filename) 可以得到一个文件流(FileOutputStream)或者(FileIutputStream), 然后调用文件流的write方法或者read方法就可以实现“写”和“读”功能 。


写操作

openFileOutput(String filename,mode)———— 打开应用程序私有目录下的的指定私有文件(String filename)写入数据,

返回一个FileOutputStream 对象,如果文件不存在就创建这个文件。

官方说明

Parameters
name mode
The name of the file to open; can not contain path separators.
Operating mode. Use 0 or MODE_PRIVATE for the default operation,MODE_APPEND to append to an existing file,MODE_WORLD_READABLE andMODE_WORLD_WRITEABLE to control permissions.
Returns
  • FileOutputStream Resulting output stream.

常量 含义
MODE_PRIVATE 默认模式,值为0,文件只可以被调用该方法的应用程序访问

MODE_APPEND 如果文件已存在就向该文件的末尾继续写入数据,而不是覆盖原来的数据。(常用)

MODE_WORLD_READABLE 所有的应用程序都具有对该文件读的权限。

MODE_WORLD_WRITEABLE 所有的应用程序都具有对该文件写的权限。

写文件的简单过程

调用openFileOutput(String filename,mode)方法之后,会返回一个FileOutputStream对象。

然后调用FileOutputStream对象的write方法就可以写入文件了。

FileOutputStream.write(byte[] buffer) 虽然注意的是,write()方法写入的是byte[]类型,所以要通过

转换,把为string类型的args转换为byte[]类型。然后再写入。

其他操作方法:

读文件

openFileInput(String filename) 打开应用程序私有目录下的的指定私有文件以读入数据,返回一个FileInputStream 对象

列举文件

fileList() 搜索应用程序私有文件夹下的私有文件,返回所有文件名的String数组

删除文件

deleteFile(String fileName) 删除指定文件名的文件,成功返回true,失败返回false

具体用法还是看一下demo程序的代码,注释比较详细了

效果图



main.xml代码





分享到:
评论

相关推荐

    Android学习笔记(十)——实现新闻列表

    Android学习笔记(一)——创建第一个Android项目 Android学习笔记(二)android studio基本控件及布局(实现图片查看器) Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像) ...

    Android Training学习笔记——Navigation 参考源码

    Android Training系列是Google提供的一系列教程,旨在帮助开发者提升技能,而"Android Training学习笔记——Navigation 参考源码"则是对这一主题的深入探讨。 首先,Navigation组件的核心概念是Navigation Graph,...

    Android学习笔记之——Content Providers

    之前博文《 Android学习笔记之——Android Studio的安装(3.6版本)、Java的基本语法及Android的概述 》曾经介绍过android有四大组件。本博文学习一下Content Providers(内容提供器) 目录 Android运行时 ...

    JAVA学习笔记————————

    6. **IO流**:JAVA的输入/输出流系统允许程序进行数据的读写,学习笔记会涵盖文件操作、网络通信中的数据传输,以及流的分类和使用。 7. **多线程**:JAVA提供了丰富的多线程支持,学习笔记会讲解线程的创建、同步...

    Android开发者学习笔记——View、Canvas、bitmap

    Android开发者学习笔记——View、Canvas、bitmap Android 开发者学习笔记——View、Canvas、bitmap 是 Android 开发中常用的类,本文将通过实例讲解 View、Canvas 等相关知识点。 从资源中获取位图 在 Android ...

    Android Training学习笔记——Navigation 参考源码(ListView版)

    这篇“Android Training学习笔记——Navigation 参考源码(ListView版)”深入探讨了如何使用Navigation构建一个基于ListView的导航系统。我们将从以下几个方面来详细讨论这个主题: 1. **Navigation组件简介** ...

    Python 笔记源码——内含python后端&机器学习等.zip

    Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip Python 笔记源码——内含python后端&机器学习等.zip ...

    Android学习笔记——Http通信 源码

    这篇"Android学习笔记——Http通信 源码"主要探讨了如何在Android应用中利用WebView控件加载网页以及使用ImageView控件加载网络图片,这两部分是Android应用与互联网交互的常见场景。 首先,我们来深入理解一下`...

    Android学习笔记——获取网络图片并显示

    需要注意的是,进行网络操作时,Android系统要求在`AndroidManifest.xml`文件中声明相应的权限: ```xml <uses-permission android:name="android.permission.INTERNET" /> ``` 如果没有添加这个权限,程序可能会因...

    【安卓项目】——新闻资讯类项目

    Android学习笔记(八)——数据存储(SD卡文件操作) Android学习笔记(九)——网络技术 Android学习笔记(十)——实现新闻列表案例 Android学习笔记(十一)——一些高级控件的使用 Android学习笔记(十二)——...

    Android Training学习笔记——RecyclerView和CardView

    这篇“Android Training学习笔记”主要围绕这两个组件展开,旨在帮助开发者提升他们的Android应用设计能力。 RecyclerView是Android SDK提供的一种列表视图控件,取代了早期的ListView。RecyclerView的优势在于它的...

    c语言文件读写操作代码(个人学习笔记)

    c语言文件读写操作代码(个人学习笔记)c语言文件读写操作代码(个人学习笔记)c语言文件读写操作代码(个人学习笔记)c语言文件读写操作代码(个人学习笔记)c语言文件读写操作代码(个人学习笔记)c语言文件读写...

    第一行代码 android学习笔记 完整版

    "Android学习笔记" Android学习笔记是Android开发者的必读书籍,书中涵盖了Android系统架构、Activity、Intent、资源管理等多方面的知识。本笔记对应的学习资源《第一行代码》是Android开发者的入门必读书籍,书中...

    Android学习笔记——Canvas & clipRect

    这篇学习笔记将深入探讨这两个概念及其在实际应用中的使用。 首先,Canvas可以理解为画布,它是Android系统提供的用于在屏幕上绘制图形的对象。在Android中,我们可以通过Canvas来绘制各种形状,如线条、矩形、圆、...

    Android 学习笔记——利用JNI技术在Android中调用、调试C++代码

    这篇“Android学习笔记——利用JNI技术在Android中调用、调试C++代码”将带你深入理解如何在Android应用中使用JNI来调用C++代码,以及如何进行调试。以下是对这一主题的详细阐述。 1. **JNI简介** JNI是Java平台的...

    Android Training学习笔记——App Bar 参考源码

    这篇文章是基于“Android Training”系列的学习笔记,主要探讨了App Bar的设计原理和参考源码分析。下面将详细阐述App Bar的相关知识点。 首先,App Bar是Android设计指南中推荐的用户界面元素,它位于屏幕顶部,...

    狂神Java学习笔记————前端入门——html、css、JavaScript学习代码

    【狂神Java学习笔记——前端入门——HTML、CSS、JavaScript学习代码】是针对初学者的一份详实的学习资料,这份笔记记录了跟随B站知名up主“遇见狂神说”的java系列视频中关于前端开发的基础内容。笔记内容不仅与视频...

Global site tag (gtag.js) - Google Analytics