我一直在搜索如何从设备中获取包含我的音乐文件的文件夹名称(在内部sd卡中),但我看到的所有示例都是关于如何获取文件名而不是文件夹。我怎么能写一个代码,实际上是动态的,这意味着它不关心文件路径是什么,它总是得到一个文件的文件夹(目录)名称。
在我的应用程序中,我试图获得我的音乐文件的文件夹名称并将其保存为字符串,使用光标我做了如下操作
ContentResolver musicResolver = getActivity().getContentResolver();
Uri musicUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
Cursor musicCursor = musicResolver.query(musicUri, null, null, null, null);
if (musicCursor != null && musicCursor.moveToFirst()) {
int pathColumn = musicCursor.getColumnIndex(MediaStore.Audio.Media.DATA);
counter = 0;
do {
String thisPath = musicCursor.getString(pathColumn);
//String folderName = ???
} while (musicCursor.moveToNext());
所以这给我的路径是这样的:/存储/模拟/0/folderName/请确保
如果有人能告诉我如何获得文件夹名,我将不胜感激。欢呼。
创建new File(thisPath)
并调用getParent()
并调用getName()
解析为文件
File f = new File(thisPath);
f.getParent();