我想用一个带有特定扩展名的SD卡上找到的文件的文件名填充一个微调器。到目前为止,我可以使用正确的文件填充微调器,但也显示了路径。
有人能告诉我如何只获取SD卡目录中特定文件的文件名吗?
答案 0 :(得分:26)
File sdCardRoot = Environment.getExternalStorageDirectory();
File yourDir = new File(sdCardRoot, "path");
for (File f : yourDir.listFiles()) {
if (f.isFile())
String name = f.getName();
// Do your stuff
}
有关详细信息,请查看 Environment 页面。
答案 1 :(得分:3)
尝试以下代码
File sdCard = Environment.getExternalStorageDirectory();
File dir = new File(sdCard, "yourpath");
for (File f : dir.listFiles()) {
if (f.isFile())
String name = f.getName();
// do whatever you want with filename
}
答案 2 :(得分:2)
File filePath= new File(File Address);
File[] fileList = filePath.listFiles();
String name = fileList [0].getName().toString();
答案 3 :(得分:0)
你能以相反的顺序(从右到左)处理字符串,找到第一个斜杠,然后在该点剪切字符串并将字符串的最右边部分作为文件名吗?
答案 4 :(得分:0)
使用文件对象的getName()方法:
file.getName();
答案 5 :(得分:0)
以上答案在我的情况下给出了空指针异常。以下代码为我工作:
File yourDir = new File(Environment.getExternalStorageDirectory().getPath() + "/WhatsApp/Databases");
for (File f : yourDir.listFiles()) {
if (f.isFile())
name = f.getName();
// Do your stuff
}