Environment.getExternalStorageDirectory()与Environment.getExternalStoragePublicDirectory(String type)

Environment.getExternalStorageDirectory()是获得外部存储的第一层的对象,可以通过这个对象获得这一层的各个文件的名称,路径,以及建立其中一个文件的抽象对象。
代码如下:

 File files = Environment.getExternalStorageDirectory();//获得外部存储器的第一层的文件对象
              File files = Environment.getExternalStorageDirectory();//获得外部存储器的第一层的文件对象

                File [] pp =files.listFiles();//获得第一层的所有文件


                for(File file:pp ){
                    Log.d(""," 文件名:"+file.getName()+"文件路径 :"+file.getAbsolutePath());

                }

如果想对第一层的某个文件实例化,并获得这个文件下的所有文件的文件名和路径则:

   File files = Environment.getExternalStorageDirectory();//获得外部存储器的第一层的文件对象
                File music = new File(files,"/ripple");//对第一层的ripple实例化

                File []pp =music.listFiles();//获得ripple下的所有的文件。
                for(File file:pp ){
                    Log.d(""," 文件名:"+file.getName()+"文件路径 :"+file.getAbsolutePath());//获得file的绝对路径
                }

ripple是第一层的一个文件,通过 File music = new File(files,”/ripple”);
将其实例化,可以获得其ripple下的所有文件。
结果如下

这里写图片描述

注意:
必须在mainfests中声明权限:

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

Environment.getExternalStoragePublicDirectory(String type)

如果您需要往sdcard中保存特定类型的内容,可以考虑使用Environment.getExternalStoragePublicDirectory(String type)函数,该函数可以返回特定类型的目录,目前支持如下类型:

DIRECTORY_ALARMS //警报的铃声
DIRECTORY_DCIM //相机拍摄的图片和视频保存的位置
DIRECTORY_DOWNLOADS //下载文件保存的位置
DIRECTORY_MOVIES //电影保存的位置, 比如 通过google play下载的电影
DIRECTORY_MUSIC //音乐保存的位置
DIRECTORY_NOTIFICATIONS //通知音保存的位置
DIRECTORY_PICTURES //下载的图片保存的位置
DIRECTORY_PODCASTS //用于保存podcast(博客)的音频文件
DIRECTORY_RINGTONES //保存铃声的位置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值