在Android上过滤目录中的文件

在Android上过滤目录中的文件,android,Android,在我的应用程序中,我从gallery中的文件夹中获取图像并将其保存到数组列表中。现在我只想提取扩展名为.jpg的文件。我该如何做 保存到数组列表的代码为 private List<String> ReadSDCard() { //It have to be matched with the directory in SDCard File f = new File("sdcard/data/crak"); File[] files=f.li

在我的应用程序中,我从gallery中的文件夹中获取图像并将其保存到数组列表中。现在我只想提取扩展名为.jpg的文件。我该如何做

保存到数组列表的代码为

  private List<String> ReadSDCard()
    {
     //It have to be matched with the directory in SDCard
     File f = new File("sdcard/data/crak");

     File[] files=f.listFiles();

     for(int i=0; i<files.length; i++)
     {
      File file = files[i];
      /*It's assumed that all file in the path are in supported type*/
      tFileList.add(file.getPath());
     }
     return tFileList;
    }
private List ReadSDCard()
{
//它必须与SD卡中的目录匹配
文件f=新文件(“SD卡/数据/裂缝”);
File[]files=f.listFiles();
对于(int i=0;i使用
.endsWith()
方法从Java字符串类检查文件扩展名

方法:

public boolean endsWith(String suffix)
你的代码有点像

private List<String> ReadSDCard()
{
     //It have to be matched with the directory in SDCard
     File f = new File("sdcard/data/crak");

     File[] files=f.listFiles();

     for(int i=0; i<files.length; i++)
     {
      File file = files[i];
      /*It's assumed that all file in the path are in supported type*/
      String filePath = file.getPath();
      if(filePath.endsWith(".jpg")) // Condition to check .jpg file extension
      tFileList.add(filePath);
     }
 return tFileList;
}
private List ReadSDCard()
{
//它必须与SD卡中的目录匹配
文件f=新文件(“SD卡/数据/裂缝”);
File[]files=f.listFiles();
对于(int i=0;i
private List ReadSDCard()
{
字符串扩展名=”;
文件f=新文件(“SD卡/数据/裂缝”);
File[]files=f.listFiles();
对于(int i=0;i 0){
extension=files[i].getPath().substring(i+1);//这是扩展名
if(扩展名为equals(“jpg”))
{
添加(file.getPath());
}
}
}
返回tFileList;
}
您可以使用界面筛选文件

改变你的代码线

File[] files=f.listFiles();
详情如下:

File[] jpgfiles = f.listFiles(new FileFilter() {
            @Override
            public boolean accept(File file)
            {
                return (file.getPath().endsWith(".jpg")||file.getPath().endsWith(".jpeg"));
            }
});

在代码中添加以下内容:

          String filePath = file.getPath();
          if(filePath.endsWith(".jpg")) 
          tFileList.add(filePath);

你的问题只需要一点努力就可以得到答案。抱歉,这似乎是一个努力的湖。这个问题不值得在StackOverFlow上问。简单的谷歌搜索就足够了。这是我一直在寻找的答案,这应该是公认的答案。
          String filePath = file.getPath();
          if(filePath.endsWith(".jpg")) 
          tFileList.add(filePath);