Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将特定文件类型拉入Android Studio列表_Java_Android_Android Studio - Fatal编程技术网

Java 如何将特定文件类型拉入Android Studio列表

Java 如何将特定文件类型拉入Android Studio列表,java,android,android-studio,Java,Android,Android Studio,我正在尝试将图像从我的资产文件夹拉入列表。在我的资产文件夹中,我有另一个名为images的文件夹,其中有2个.jpeg文件。当我将图像拉入包含下面代码的列表时,它还会随机拉入3个不在文件夹中的.png文件。其他3个随机.png文件似乎是“android默认”文件,但我似乎无法摆脱它们 列表结构的图像: 有没有办法只将jpeg文件拉入列表,或者有没有办法删除其他android默认文件 String[] imageList = getAssets().list("images"); 如果目标A

我正在尝试将图像从我的资产文件夹拉入列表。在我的资产文件夹中,我有另一个名为images的文件夹,其中有2个
.jpeg
文件。当我将图像拉入包含下面代码的列表时,它还会随机拉入3个不在文件夹中的
.png
文件。其他3个随机
.png
文件似乎是“android默认”文件,但我似乎无法摆脱它们

列表结构的图像:

有没有办法只将jpeg文件拉入列表,或者有没有办法删除其他android默认文件

 String[] imageList = getAssets().list("images");

如果目标API低于级别24,则不要使用
收集器。
Plus
lambda
需要java 8

试试这个

// Your filename list    
String[] imageList = getAssets().list("images");

// New list 
List<String> myList = new ArrayList<String>();

// For each file name, if the filename ends with jpg or jpeg, add it into "my list"
for(String filename : imageList) {
    if(filename.toLowerCase().endsWith(".jpg") || filename.toLowerCase().endsWith(".jpeg")) {
        myList.add(filename);
    }
}
//您的文件名列表
字符串[]imageList=getAssets().list(“图像”);
//新名单
List myList=new ArrayList();
//对于每个文件名,如果文件名以jpg或jpeg结尾,请将其添加到“我的列表”中
用于(字符串文件名:imageList){
if(filename.toLowerCase().endsWith(“.jpg”)| | filename.toLowerCase().endsWith(“.jpeg”)){
添加(文件名);
}
}

然后,您将拥有一个仅包含JPEG、JPEG、JPG、JPG文件的字符串列表。在以下两种解决方案中,以
结尾的文件名将被过滤,然后添加到列表中

  • 要仅获取.jpg文件,请使用:

    List<String> myFiles = Files.list(Paths.get(PATH))
                         .filter(s -> s.toString().endsWith(".jpg"))
                         .map(Path::getFileName)
                         .map(Object::toString)
                         .collect(Collectors.toList());
    
    List<String> myFiles = Arrays.asList(imageList)
                          .stream()
                          .filter(e -> e.endsWith(".jpg"))
                          .collect(Collectors.toList());
    
    List myFiles=Files.List(PATH.get(PATH))
    .filter(s->s.toString().endsWith(“.jpg”))
    .map(路径::getFileName)
    .map(对象::toString)
    .collect(Collectors.toList());
    
  • 要在加载所有文件后进行筛选,请使用:

    List<String> myFiles = Files.list(Paths.get(PATH))
                         .filter(s -> s.toString().endsWith(".jpg"))
                         .map(Path::getFileName)
                         .map(Object::toString)
                         .collect(Collectors.toList());
    
    List<String> myFiles = Arrays.asList(imageList)
                          .stream()
                          .filter(e -> e.endsWith(".jpg"))
                          .collect(Collectors.toList());
    
    List myFiles=Arrays.asList(imageList)
    .stream()
    .filter(e->e.endsWith(“.jpg”))
    .collect(Collectors.toList());
    

非常感谢,我将对此进行详细介绍go@NicholasMott我的荣幸。请不要忘记将答案设置为已验证