好的,我加上了注释。
你可以比较路径是否与任何文件名匹配(不包含扩展名),如果匹配,你就得到它了。
你可以简单地这样做:
获取目录路径
File extStore = Environment.getExternalStorageDirectory()
在我的示例中,我将文件名设置为unnamed
,但您可以根据自己的喜好进行更改,例如my_birthday_moovie001
String NameOfFile = "unnamed"
添加视频,我将其放在“下载”中,但您可以更改它
String PathWithFolder = extStore + "/Download/";
创建一个方法,列出路径中的所有文件
private List<String> getListFiles(File parentDir) {
ArrayList<String> inFiles = new ArrayList<String>();
File[] files = parentDir.listFiles();
for (File file : files) {
if (file.isDirectory()) {
inFiles.addAll(getListFiles(file));
} else {
String AbsolutePath = file.getAbsolutePath();
String nameofFile = AbsolutePath.substring(AbsolutePath.lastIndexOf("/") + 1, AbsolutePath.length());
String fileNameWithoutExtension = nameofFile.substring(0, nameofFile.lastIndexOf('.'));
inFiles.add(fileNameWithoutExtension);
}
}
return inFiles;
}
通过这种方式,您可以获得文件的名称
List<String> files = getListFiles(new File(PathWithFolder));
只需添加一个 for
循环,查找您的 file
的匹配项即可。
for (int i = 0; i<=files.size()-1; i++){
if(PathWithFolder.equals(files.get(i))) {
Toast.makeText(MainActivity.this, "You got it!", Toast.LENGTH_SHORT).show();
}
else{
Toast.makeText(MainActivity.this, "You don't.", Toast.LENGTH_SHORT).show();
}
}
如果你想获取路径并执行
@Zain Ul Abidin
提出的建议,并在
getListFiles()
方法上进行比较,请添加以下内容:
String fileExtension = nameofFile.substring(nameofFile.lastIndexOf("."))
希望能有所帮助。