Android 学习笔记4 文件操作

4种文件操作模式

Context.MODE_PRIVATE   默认的操作模式,代表文件是私有数据 ,只能被应用自身访问,默认以覆盖的方式写入新内容。

Context.MODE_APPEND     以追加的方式写入新内容,只能被应用自身访问。

MODE_WORLD_READABLE     当前文件可被其他应用读(只能读不能写)。

MODE_WORLD_WRITEABLE   当前文件可被其他文件写(只能写不能读)。

如果希望文件被其他应用读和写,可以传入: 

openFileOutput("filename",Context.MODE_WORLD_READABLE +Context.MODE_WORLD_WRITEABLE);

如果希望内容以追加方式写入MODE_WORLD_READABLE、MODE_WORLD_WRITEABLE  两种方式的文件中,可以

FileOutputStream outStream = newFileOutputStream(file, true);


在File Explorer中

- r w - r w - - - -

1 2 3 4 5 6 7 8 9 10

1:-代表文件,d代表目录

2,3:r w 代表可被当前应用读/写

4:是否可被运行,-否

5,6,7:同一组的应用是否可以对该文件进行读/写/运行

8,9,10:其他应用是否可以读/写/运行

Activity还提供了getCacheDir()和getFilesDir()方法:

getCacheDir()方法用于获取/data/data/<packagename>/cache目录

getFilesDir()方法用于获取/data/data/<packagename>/files目录

将文件保存到SD卡中


在程序中访问SDCard,你需要申请访问SDCard的权限。

在AndroidManifest.xml中加入访问SDCard的权限如下:

<!-- 在SDCard中创建与删除文件权限-->

<uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

<!-- 往SDCard写入数据权限-->

<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>


要往SDCard存放文件,程序必须先判断手机是否装有SDCard,并且可以进行读写。

注意:访问SDCard必须在AndroidManifest.xml中加入访问SDCard的权限

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))

{

File sdCardDir =Environment.getExternalStorageDirectory();//获取SDCard目录

File saveFile = new File(sdCardDir,“itcast.txt”);

FileOutputStreamoutStream = new FileOutputStream(saveFile);

outStream.write("传智播客".getBytes());

outStream.close();


}

Environment.getExternalStorageState()方法用于获取SDCard的状态,如果手机装有SDCard,并且可以进行读写,那么方法返回的状态等于Environment.MEDIA_MOUNTED。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值