Android数据存储操作②文件存储
16lz
2021-01-24
在android中使用openFileInput和openFileOutput读取设备上的文件,这两个方法只支持读取该应用目录下的文件,路径位于/data/data/<package name>/files目录中读取非其自身目录下的文件将会抛出异常。需要提醒的是,如果调用FileOutputStream 时指定的文件不存在,Android 会自动创建它。另外,在默认情况下,写入的时候会覆盖原文件内容,如果想把新写入的内容附加到原文件内容后,则可以指定其mode为Context.MODE_APPEND。
1 String FILE_NAME = “tempfile.tmp”; // 确定要操作文件的文件名2 FileOutputStream fos = openFileOutput(FILE_NAME, Context.MODE_PRIVATE); // 初始化
3 // Create a new file input stream.
4 FileInputStream fis = openFileInput(FILE_NAME); // 创建输入流,读取文件
如果希望文件具有多个权限,可以使用"+"连接,例如:
1 FileOutputStream fos = openFileOutput(FILE_NAME, Context.MODE_WORLD_READABLE +2 Context.MODE_WORLD_WRITEBLE); 1 FileOutputStream fos = openFileOutput(FILE_NAME, Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE);
一般将要读取的文件放在应用程序的/res/raw/下,如mydatafile.mp3。那么就可以在你的应用中使用getResources 获取资源后,以openRawResource 方法(不带后缀的资源文件名)打开这个文件,实现代码如下所示:
1 Resources myResources = getResources();2 InputStream myFile = myResources.openRawResource(R.raw.myfilename);
更多相关文章
- 【Android】xml文件里面出现unbound prefix的问题
- 完美解决 No IDEA annotations attached to the JDK 1.8 (C:\Pr
- Android(安卓)Studio 将引用第三方jar包的android工程打包成jar
- Android(安卓)| gravity和layout_gravity的区别
- Windows下给Android(安卓)app进行系统签名
- Android(安卓)NDK学习(2)Windows下NDK开发环境配置
- Android开发札记初级(三)探索Android(安卓)Studio Ⅱ
- 添加 C/C++ 代码
- Android之Android(安卓)Studio JNI