`

android 文件读写(转)

 
阅读更多
首先给大家介绍使用文件如何对数据进行存储,Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。
public class FileActivity extends Activity {
    @Override public void onCreate(Bundle savedInstanceState) {
        ... 
         FileOutputStream outStream = this.openFileOutput("itcast.txt", Context.MODE_PRIVATE);
         outStream.write("传智播客".getBytes());
         outStream.close();   
    }
}


openFileOutput()方法的第一参数用于指定文件名称,不能包含路径分隔符“/” ,如果文件不存在,Android 会自动创建它。创建的文件保存在/data/data/<package name>/files目录,如: /data/data/cn.itcast.action/files/itcast.txt ,通过点击Eclipse菜单“Window”-“Show View”-“Other”,在对话窗口中展开android文件夹,选择下面的File Explorer视图,然后在File Explorer视图中展开/data/data/<package name>/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("itcast.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()方法。
FileInputStream inStream = this.getContext().openFileInput("itcast.txt");
Log.i("FileTest", readInStream(inStream));

readInStream()的方法请看本页下面备注。

或者直接使用文件的绝对路径:
File file = new File("/data/data/cn.itcast.action/files/itcast.txt");
FileInputStream inStream = new FileInputStream(file);
Log.i("FileTest", readInStream(inStream));

注意:上面文件路径中的“cn.itcast.action”为应用所在包,当你在编写代码时应替换为你自己应用使用的包。
对于私有文件只能被创建该文件的应用访问,如果希望文件能被其他应用读和写,可以在创建文件时,指定Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE权限。

Activity还提供了getCacheDir()和getFilesDir()方法:
getCacheDir()方法用于获取/data/data/<package name>/cache目录
getFilesDir()方法用于获取/data/data/<package name>/files目录


原文:android文件存储(转)

其他链接:
android 私有文件夹 文件的读入与读取

Android中往手机自带的存储空间写入文件





有的网友说assets下面不能包含大文件?错!
可以通过这样的方法访问到你的大文件
AssetFileDescriptor afd = getAssets().openFd("a.mp3");
player.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
分享到:
评论

相关推荐

    android文件读写权限

    总结来说,Android文件读写权限管理是一个复杂的过程,开发者需要在`AndroidManifest.xml`中声明权限,并在Android 6.0及以上版本中处理运行时权限请求。随着Android版本的更新,如Android Q,文件访问方式也会相应...

    Android 文件读写操作

    在Android系统中,文件读写操作是开发过程中常见的任务,涉及到资源文件、数据区文件以及外部存储(如SD卡)的访问。以下是对这些操作的详细说明: 一、资源文件的读取 1. 从resource的raw中读取文件数据: 资源...

    Android 13读写权限变更,小米14 txt 文件读写

    对于开发者来说,这意味着需要更新代码以适配这些新规则,尤其是在进行文件读写操作时。本文将详细探讨Android 13的读写权限变更,以及如何在小米14设备上处理txt文件的读写测试。 首先,理解Android 13中的存储...

    android读写xml文件

    android中读写xml文件简单demo,可以通过此代码来简单的读取xml配置文件

    Android 读写文件实例

    以上就是Android平台上的文件读写操作的基本方法和注意事项。通过了解这些知识,开发者可以有效地在Android设备上存储和读取数据。在实际项目中,还需要结合具体需求,考虑数据安全、文件同步、性能优化等方面的问题...

    Android读写配置文件

    总结来说,Android的配置文件读写主要涉及SharedPreferences和File操作。对于简单的偏好设置,SharedPreferences提供了方便快捷的方法;而对于复杂数据结构或自定义格式,直接操作文件(如XML或JSON)会更有灵活性。...

    Android 实现读写U盘文件

    在Android平台上,与U盘进行文件的读写操作并不像在桌面系统中那样直接,因为Android设备通常不直接支持USB主机模式(Host Mode)。然而,借助第三方库如libaums,我们可以实现这一功能。libaums是Android上一个用于...

    Android USB检测,文件读写demo

    在Android平台上,USB设备的检测和文件读写是开发者经常遇到的任务,特别是在移动设备与外部存储设备交互的场景中。本教程将详细讲解如何实现"Android USB检测,文件读写demo",帮助你掌握相关技能。 首先,让我们...

    Qt Android 读写文件权限与录制音频权限询问Demo

    首先,我们来详细了解一下Qt在Android上处理文件读写权限的过程。在Android系统中,读写文件权限分为内部存储和外部存储两种。内部存储权限用于访问应用私有的数据目录,而外部存储权限则允许访问公共的外部存储区域...

    android 内存 文件读写操作

    一、Android文件系统概述 Android系统采用Linux内核,因此其文件系统结构遵循Linux标准。主要分为以下几个部分: 1. **内部存储(Internal Storage)**:这部分是私有的,只能由应用本身访问,用户无法直接查看。...

    Android文件读写

    在Android系统中,文件...总结,Android文件读写涉及多个步骤,包括获取权限、选择合适的位置、进行读写操作、处理异常以及遵循最佳实践以保证性能和安全性。开发者在实际开发中应根据具体需求选择适当的方法和技术。

    android 应用\文件读写.rar

    android 应用\文件读写android 应用\文件读写android 应用\文件读写android 应用\文件读写android 应用\文件读写android 应用\文件读写android 应用\文件读写android 应用\文件读写

    android文件读写类

    总结来说,`android文件读写类`是Android开发中的重要工具,它通过`FileUtils.java`这样的工具类对文件的读写进行了封装,使得开发者可以更方便、安全地进行文件操作。理解和掌握这个知识点,有助于提升Android应用...

    android文件读写源码

    本文将深入解析Android文件读写源码,探讨如何在Android应用中创建、读取、修改和删除文件,并涉及权限管理和存储位置的选择。 首先,Android提供了`java.io`和`java.nio`两个包来支持文件操作。在`java.io`包中,`...

    Android SD卡文件读写操作

    本篇文章将详细探讨Android平台上SD卡的文件读写操作,这对于开发者来说是一项基本且重要的技能。 一、Android权限设置 在进行SD卡文件读写之前,首先需要在AndroidManifest.xml文件中声明相应的权限。Android 6.0...

    Android平台的txt文本文件读写操作

    ### Android平台的txt文本文件读写操作 #### 一、引言 在Android应用程序开发过程中,文本文件(如.txt格式)的读写操作是常见需求之一。这些操作可以帮助开发者存储临时数据、配置信息或者实现简单的文件共享功能...

    内部存储读写文件

    本文将详细介绍如何在Android Studio中获取内部存储路径,创建文件夹,以及进行读写和删除文件的操作。 首先,获取内部存储路径通常使用Android的`getFilesDir()`或`getInternalStorageDirectory()`方法。`...

    delphi 文件读写

    在Delphi编程环境中,文件读写是常见的操作,主要用于存储和检索数据。本文将深入探讨如何使用Delphi进行文本文件的读写操作,包括基本概念、常用函数和类,以及实际应用示例。 首先,了解文件系统的基本概念是至关...

    Android 文件读写操作方法总结

    Android 文件读写操作方法总结 Android 中的文件读写操作是 Android 应用程序开发中不可或缺的一部分。 Android 文件系统中有多种类型的文件,包括资源文件、数据区文件、SD 卡文件等,每种类型的文件都有其特定的...

    GDAL2.2.3依赖包和Android项目读写shp文件示例代码

    本文将详细介绍如何在Android项目中集成GDAL2.2.3依赖包,并提供读写shp文件的示例代码。 首先,我们需要将GDAL2.2.3的依赖包引入到Android项目中。这通常涉及到以下步骤: 1. 下载GDAL2.2.3的Android版本,通常以...

Global site tag (gtag.js) - Google Analytics