Android学习之文件操作
来源:互联网 发布:淘宝找直通车运营好吗 编辑:程序博客网 时间:2024/06/05 22:40
为啥CSDN只有原创,转载和翻译三种呢,很让我纠结,写的东西部分是从别的地方抠的,部分自己总结的,让我咋选呢! 好吧,不纠结了。
今天在看一个源码时发现调用Context对象的getFilesDir()方法得到的是/data/data/包名/files,因为平时没怎么用,所以有点好奇,想探个究竟,API是这么说的:
public File getFilesDir ()Added in API level 1Returns the absolute path to the directory on the filesystem where files created with openFileOutput(String, int) are stored.ReturnsReturns the path of the directory holding application files.
又来了一个API,openFileOutput(),
public abstract FileOutputStream openFileOutput (String name, int mode)Added in API level 1Open a private file associated with this Context's application package for writing. Creates the file if it doesn't already exist.ParametersnameThe name of the file to open; can not contain path separators.modeOperating mode. Use 0 or MODE_PRIVATE for the default operation, MODE_APPEND to append to an existing file, MODE_WORLD_READABLE and MODE_WORLD_WRITEABLE to control permissions.ReturnsFileOutputStream Resulting output stream.ThrowsFileNotFoundExceptionSee AlsoMODE_APPENDMODE_PRIVATEMODE_WORLD_READABLEMODE_WORLD_WRITEABLEopenFileInput(String)fileList()deleteFile(String)FileOutputStream(String)
英文不好的我着实头疼啊。
粗略的解释一下吧:具体的来说可以使用openFileOutput来保存数据,第一个参数是文件名称,第二个是模式,提供了相应的参数供选择了,
MODE_PRIVATE:应用程序私有,这个应该明白吧。
MODE_WORLD_READABLE:所有应用程序都可以访问。
MODE_WORLD_WRITEABLE:所有应用程序都可以写入。
MODE_APPEND:如果要创建的文件存在则新写入的数据不会覆盖以前的数据。
写一个简单的例子吧:
OutputStream os = activity.openFileOutput("file.txt", MODE_PRIVATE);OutputStreamWriter w = new OutputStreamWriter(os);w.write("hello world!");w.close();os.close();
这样就在系统的/data/data/应用程序包名/files/下创建了一个叫做file.txt的文件,并写入了hello world!字符。
那getFilesDir()的作用呢就是得到“/data/data/应用程序包名/files”。
还有一个跟它类似的函数叫做getCacheDir(),得到的是这样的目录结构:/data/data/包名/cache
对了,注意在写示例代码的时候添加上相应的文件权限,否则报错哟!
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
------------- 暂时到这里吧,文件操作还有很大部分需要学习的。
- Android学习之文件操作
- 学习 之 文件操作
- Android之文件操作
- Android开发学习之IO文件读写操作
- Perl 学习之文件操作
- QT学习之文件操作
- linux学习之文件操作
- Python学习之文件操作
- Tcl学习之--文件操作
- c++学习之文件操作
- PHP学习之文件操作
- Python学习之文件操作
- Matlab学习 之 文件操作
- python学习之文件操作
- android学习记录-文件操作
- android学习 -- 读写文件操作
- Android编程之文件操作
- Android基础之文件操作
- Http Module 介绍
- ubuntu下图形化串口调试工具 cutecom
- msgctl()函数
- 解决Fragment IllegalStateException: Can not perform this action after onSaveInstanceState
- Android系统简介(2)
- Android学习之文件操作
- 手工修改Starling1.2以及其它提高效率的经验
- 9种设计模式
- 【创业者说】王可:伊锐数码科技CEO
- 写给准备学习Android的朋友 (3)
- 详解Windows平台搭建Androiod开发环境(4)
- Oracle的监听配置
- 【整理】如何取消Linux下,vi中显示的^M符号
- 【Android】状态栏通知Notification、NotificationManager详解