Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.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 过滤掉文本文件_Java_Text Files - Fatal编程技术网

Java 过滤掉文本文件

Java 过滤掉文本文件,java,text-files,Java,Text Files,代码将文件与目录分开 我试图过滤掉文本文件(.txt)并打印出剩余的文件 我根本不想打印文本文件。我希望代码在if语句if(listOfFiles[I].isFile()){之后实现,因此在它检查给定值是否为实际文件,然后确定它是否为文本文件,如果其中一个测试失败,则将其添加到listOfFiles数组列表中 需要帮助吗 import java.io.BufferedInputStream; import java.io.File; import java.util.ArrayList; imp

代码将文件与目录分开

我试图过滤掉文本文件(.txt)并打印出剩余的文件

我根本不想打印文本文件。我希望代码在if语句
if(listOfFiles[I].isFile()){
之后实现,因此在它检查给定值是否为实际文件,然后确定它是否为文本文件,如果其中一个测试失败,则将其添加到
listOfFiles
数组列表中

需要帮助吗

import java.io.BufferedInputStream;
import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class Exc_3 {

    public static void main(String[] args) {
        File folder = new File("C:\\Users\\skyla\\Desktop");
        File[] listOfFiles = folder.listFiles();
        List<String> files = new ArrayList<>();
        List<String> directories = new ArrayList<>();

        for (int i = 0; i < listOfFiles.length; i++) {

            if (listOfFiles[i].isFile()) {
                    files.add(listOfFiles[i].getName());
            } else if (listOfFiles[i].isDirectory()) {
                directories.add(listOfFiles[i].getName());
            }
        }
        System.out.println("List of files :\n---------------");
        for (String fName : files)
            System.out.println(fName);

        System.out.println("\nList of directories :\n---------------------");
        for (String dName : directories)
            System.out.println(dName);
    }
}
import java.io.BufferedInputStream;
导入java.io.File;
导入java.util.ArrayList;
导入java.util.List;
公开课执行委员会3{
公共静态void main(字符串[]args){
文件夹=新文件(“C:\\Users\\skyla\\Desktop”);
File[]listOfFiles=folder.listFiles();
列表文件=新的ArrayList();
列表目录=新的ArrayList();
for(int i=0;i
为什么不使用下面的代码段。您还可以将其用于一个函数,通过生成
布尔值
true
if
mimeType=“text/plain”


祝您好运

因为您只检查文件扩展名是否为“.txt”,那么您可以使用String.endsWith(“.txt”)检查名称


你被困在哪里了?我只需要添加一段额外的代码来过滤掉文本文件,但我找不到一种方法。你所说的“文本文件”是什么意思?只是一个具有特定扩展名的文件,还是你真的想查看文件内容,看看它是否是文本?与.txt文件有任何关系吗
Path path = FileSystems.getDefault().getPath("myFolder", "myFile");
String mimeType = Files.probeContentType(path);
if (listOfFiles[i].isFile()) {
   if (listOfFiles[i].getName().endsWith(".txt")) {
      files.add(listOfFiles[i].getName());
   }
}