`
xqr829
  • 浏览: 4190 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

android使用文件进行存储

 
阅读更多
Activity提供了openFileOutput()方法可以用于把数据输出到文件中,
public class FileActivity extends Activity {
    @Override public void onCreate(BundlesavedInstanceState) {
        ...
         FileOutputStream outStream =this.openFileOutput("xxx.txt", Context.MODE_PRIVATE);
        outStream.write("xxxx".getBytes());
         outStream.close();
    }
}
openFileOutput()方法的第一参数用于指定文件名称,不能包含路径分隔符“/” ,如果文件不存在,Android 会自动创建它。创建的文件保存在/data/data/<packagename>/files目录,如: /data/data/cn.xxx.action/files/itcast.txt ,通过点击Eclipse菜单“Window”-“Show View”-“Other”,在对话窗口中展开android文件夹,选择下面的File Explorer视图,然后在File Explorer视图中展开/data/data/<packagename>/files目录就可以看到该文件。
openFileOutput()方法的第二参数用于指定操作模式,有四种模式,分别为:
Context.MODE_PRIVATE    =  0
Context.MODE_APPEND    =  32768
Context.MODE_WORLD_READABLE=  1
Context.MODE_WORLD_WRITEABLE=  2

Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。
MODE_WORLD_READABLE:表示当前文件可以被其他应用读取;MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。
如果希望文件被其他应用读和写,可以传入:
openFileOutput("scl.txt",Context.MODE_WORLD_READABLE +Context.MODE_WORLD_WRITEABLE);
android有一套自己的安全模型,当应用程序(.apk)在安装时系统就会分配给他一个userid,当该应用要去访问其他资源比如文件的时候,就需要userid匹配。默认情况下,任何应用创建的文件,sharedpreferences,数据库都应该是私有的(位于/data/data/<package name>/files),其他程序无法访问。除非在创建时指定了Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE ,只有这样其他程序才能正确访问。
读取文件内容:
如果要打开存放在/data/data/<package name>/files目录应用私有的文件,可以使用Activity提供openFileInput()方法。
FileInputStreaminStream = this.getContext().openFileInput("xxx.txt");
Log.i("FileTest",readInStream(inStream));
readInStream()的方法请看本页下面备注。
或者直接使用文件的绝对路径:
Filefile = new File("/data/data/cn.xxx.action/files/itcast.txt");
FileInputStreaminStream = new FileInputStream(file);
Log.i("FileTest",readInStream(inStream));
注意:上面文件路径中的“cn.xxx.action”为应用所在包,当你在编写代码时应替换为你自己应用使用的包。
对于私有文件只能被创建该文件的应用访问,如果希望文件能被其他应用读和写,可以在创建文件时,指定Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE权限。
Activity还提供了getCacheDir()和getFilesDir()方法:
getCacheDir()方法用于获取/data/data/<package name>/cache目录
getFilesDir()方法用于获取/data/data/<package name>/files目录

文章来源:http://www.2cto.com/kf/201109/105858.html
分享到:
评论

相关推荐

    Android不需要文件存储权限将文件保存至手机

    在Android系统中,传统的文件存储方式通常需要应用获取相应的文件读写权限,以便在外部存储(如SD卡)上保存和访问数据。然而,随着Android系统的更新,特别是自Android 6.0(Marshmallow)引入运行时权限管理以来,...

    android 文件存储

    总结起来,Android文件存储涉及多种策略,根据数据类型、访问需求和安全性选择合适的存储方式。理解并熟练掌握这些技术对于开发高效、稳定的应用至关重要。在实际开发中,还需要注意数据备份、权限管理和文件清理等...

    Android的文件存储

    要理解Android的文件存储,首先要明白Android是如何用什么方式获取和存入数据的。Android的文件操作都是通过流的方式进行的,即IO。Android的文件操作跟Java是一样的,文件操作分为输入流(InputStream)和输出流...

    Android本地数据存储之文件存储读写

    一、Android文件存储基础 Android提供了多种本地数据存储方式,如内部存储、外部存储、SQLite数据库、SharedPreferences等。文件存储是一种简单直接的方法,适用于存储非结构化的文本、图片或其他文件类型。在...

    Android 本地文件的存储和读取

    以上是Android本地文件存储和读取的基本知识点。通过熟练掌握这些技术,开发者可以更好地处理应用中的数据持久化,提高用户体验。在实际开发中,还应结合具体需求,选择合适的数据结构和文件格式,以实现高效且安全...

    Android中使用File文件进行数据存储

    Android提供了多种数据存储方式,其中包括使用File类进行文件存储。本教程将深入探讨如何在Android中利用File类进行数据操作,包括创建、读取、修改和删除文件,以及文件路径的处理。 1. **基本概念** - **File类*...

    Android文件上传,文件选择器,多选

    `DocumentFile`允许你遍历文件系统并进行读写操作,而SAF是Android提供的用于访问存储的框架,它提供了安全且统一的方式来访问用户存储的数据。 2. 多选与单选:在文件选择器中,多选功能可以通过设置复选框或者...

    Android 读写文件实例

    在Android平台上,对文件进行读写操作是应用程序中常见的需求,比如存储用户数据、缓存信息或者媒体资源。本文将详细讲解如何在Android系统中进行SD卡和内部存储的读写,以及如何获取文件目录。 ### 1. Android权限...

    android大文件分段上传

    在标题"android大文件分段上传"中提到的方法,是通过使用Socket流将大文件分段进行上传,这是一种有效应对大文件传输问题的策略。下面我们将详细探讨这一技术。 首先,了解Socket的基本概念。Socket是网络编程中的...

    android文件系统浏览器

    总的来说,Android文件系统浏览器是Android应用开发中的一个重要工具,它通过提供直观的界面和便捷的操作,帮助用户更好地管理和利用设备的存储空间。开发者在实现这一功能时,需要关注权限控制、文件操作以及用户...

    【Android 文件管理】分区存储 ( 修改与删除图片文件 )

    2. 使用File对象:对于已知路径的本地图片文件,可以直接通过File对象进行读写操作。不过,由于Android 11的限制,可能需要请求适当的权限。 ```java File imageFile = new File(imagePath); FileOutputStream out ...

    android txt文件保存读取操作

    在Android平台上,对TXT文件进行保存和读取是常见的数据持久化操作,尤其适用于存储少量结构化的文本数据。本文将详细讲解如何在Android应用中实现TXT文件的保存和读取功能,以及涉及到的相关知识点。 首先,我们...

    Android读写配置文件

    在Android开发中,读写配置文件是常见的任务,主要用于存储应用程序的设置、用户偏好或者其他持久化数据。配置文件通常以XML或JSON格式存在,因为它们结构清晰,易于解析。本实例将详细介绍如何在Android中进行读取...

    Android内部文件存储示例

    以下是对Android内部文件存储的详细解释,以及如何进行读写操作。 1. 内部文件存储简介: Android为每个应用提供了私有的数据存储区域,称为内部存储。这个区域只能由该应用访问,用于存储应用运行时需要的数据或...

    Android案例:备忘录。利用数据存储的文件内部存储

    - Android提供了多种数据存储方式,如SharedPreferences、SQLite数据库、文件存储、ContentProvider以及网络存储等。在这个案例中,我们主要关注的是文件内部存储,适合于存储小量的非结构化数据。 2. **文件内部...

    Android文件管理器

    以下是关于"Android文件管理器"的相关知识点: 1. **文件操作**: - **创建文件**:用户可以通过文件管理器创建新的文本文件、图片文件或任何其他类型的文件。这通常涉及到选择文件类型、输入文件名并指定保存位置...

    android文件存储

    android 介绍使用文件如何对数据进行存储

    android文件上传控件

    总之,Android文件上传涉及到Android的文件操作、HTTP请求、服务器端交互以及UI控件的使用。通过合理利用现有的库和工具,可以高效实现这一功能。在实际开发中,注意处理网络异常、权限问题以及用户界面的优化,确保...

Global site tag (gtag.js) - Google Analytics