安卓中提供了Context中的方法与Environment类来获取文件。
Context文件操作方法
| 1 | public File getFileStreamPath(String name) | 
用Log把它们都显示出来
| 1 | Log.d("context", "context.getFileStreamPath-->" + | 
Log输出结果(不同版本的安卓系统,目录可能也不相同,详见/storage/sdcard/0, /sdcard, /mnt/sdcard ,/storage/emulated/legacy 的区别)
| 1 | context.getFileStreamPath-->/data/data/cn.hufeifei.environmenttest/files/test | 
Environment工具类中提供了以下几个方法:
| 1 | Environment.getDataDirectory(); | 
**1. 前三个方法 **
用Log输出来:
| 1 | //IS标识内部存储 | 
输出结果为:
| 1 | D/Environment-IS: /data | 
**2. getExternalStoragePublicDirectory方法 **
getExternalStoragePublicDirectory方法用来获取安卓外部存储中系统应用经常用到的公共文件夹,
在Environment中定义了这些文件夹的名字:
| 1 | Environment.DIRECTORY_MUSIC = "Music" | 
它们的目录一般在/storage/emulated/0/
3. 最后的三个方法
最后面三个方法是用来获取挂载点的状态(在Linux中把一些特殊目录称为所谓的挂载点,有点类似于Windows中的分区):
| 1 | Environment.MEDIA_REMOVED;//媒体存储已经移除了 | 
总体概括
下面图片大概地概括了上面的方法
- Context中的方法或得到的路径都与应用包名相关
- Environment中的方法与整个系统有关

