Android 如何访问SD卡并返回和排列特定格式的文件?
我需要访问SD卡并返回一些不同格式的文件。位置将由用户输入。如何以编程方式执行此操作?Simondid, 我相信这就是你要找的 访问SD卡: 请记住检查媒体可用性: 创建文件筛选器: mp3文件过滤器示例,创建以下过滤器类:Android 如何访问SD卡并返回和排列特定格式的文件?,android,Android,我需要访问SD卡并返回一些不同格式的文件。位置将由用户输入。如何以编程方式执行此操作?Simondid, 我相信这就是你要找的 访问SD卡: 请记住检查媒体可用性: 创建文件筛选器: mp3文件过滤器示例,创建以下过滤器类: import java.io.*; /** * A class that implements the Java FileFilter interface. * It will filter and grab only mp3 */ public class
import java.io.*;
/**
* A class that implements the Java FileFilter interface.
* It will filter and grab only mp3
*/
public class Mp3FileFilter implements FileFilter
{
private final String[] okFileExtensions =
new String[] {"mp3"};
public boolean accept(File file)
{
for (String extension : okFileExtensions)
{
if (file.getName().toLowerCase().endsWith(extension))
{
return true;
}
}
return false;
}
}
File sdcard = Environment.getExternalStorageDirectory();
File dir = new File(sdcard, "path/to/the/directory/with/mp3");
//THIS IS YOUR LIST OF MP3's
File[] mp3List = dir.listFiles(new Mp3FileFilter());
然后根据前面访问SD卡的帖子,您可以使用如下过滤器:
import java.io.*;
/**
* A class that implements the Java FileFilter interface.
* It will filter and grab only mp3
*/
public class Mp3FileFilter implements FileFilter
{
private final String[] okFileExtensions =
new String[] {"mp3"};
public boolean accept(File file)
{
for (String extension : okFileExtensions)
{
if (file.getName().toLowerCase().endsWith(extension))
{
return true;
}
}
return false;
}
}
File sdcard = Environment.getExternalStorageDirectory();
File dir = new File(sdcard, "path/to/the/directory/with/mp3");
//THIS IS YOUR LIST OF MP3's
File[] mp3List = dir.listFiles(new Mp3FileFilter());
注意:代码很粗糙您可能想确保SD卡如上所述可用于awsome Answare,但我很难让过滤器正常工作,我需要它测试媒体/音乐文件,现在只测试mp3请帮助我需要过滤器返回给定文件夹中的所有mp3文件Simon,您可以使用
String.contains(“.mp3”)代码>在给定目录/file.pheonixblade ty的文件路径上,但我解决了这个问题,这就是为什么FileFilter filterDirectoriesOnly=new FileFilter(){public boolean accept(file file file){return file.getName().endsWith(“mp3”);};Log.i(“状态”、“过滤器don”);File[]sdDirectories=yourFile.listFiles(仅限FilterDirectories);