gpt4 book ai didi

android - 根据文件扩展名过滤文件数组

转载 作者:行者123 更新时间:2023-11-30 04:26:51 24 4
gpt4 key购买 nike

我有以下代码:

File dir = new File("/sdcard/LOST.DIR");
final File file[]=dir.listFiles();

这里的 file[] 数组包含目录中存在的所有文件的列表。我想根据文件扩展名创建另一个 file[] 数组。例如:这个新数组应该只包含所有图像文件的列表(以 .jpg/.png/.tif 等结尾)并且应该排除其他文件。

我如何实现这一目标?

最佳答案

您可以尝试这样的方法来查找文件:

public void processDirectory(File aFile)
{
if (aFile.isFile())
{
processFile(aFile);
} else if (aFile.isDirectory()) {
File[] listOfFiles = aFile.listFiles();
if (listOfFiles != null) {
for (int i = 0; i < listOfFiles.length; i++)
processDirectory(listOfFiles[i]);
} else {
Log.d(TAG, " [ACCESS DENIED]");
}
}
}

public void processFile(File aFile)
{
try
{
if (!aFile.getName().endsWith(".mp3"))
return;
//Add file path to another array of files
}
}

现在你可以这样做:

File dir = new File("/sdcard/LOST.DIR");
processDirectory(dir)

更新:例如您可以声明

ArrayList<String> = filesPath new ArrayList<String>();

在进程文件中:

filesPath.Add(aFile.getAbsolutePath());

最后你可以得到这样的数组:

filesPath.toArray();

关于android - 根据文件扩展名过滤文件数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8352485/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com