小编Kev*_*ler的帖子

我需要帮助递归地比较目录中的文件以查找重复项

我正在开发一个程序,它将(希望)比较给定目录中的所有文件,识别重复项,将它们添加到列表中,然后将列表显示给用户,以便他们可以验证他们是否希望删除这些文件然后删除它们我严重陷入困境.到目前为止,我已经能够递归列出所有文件,并且我一直在搞乱比较它们以找到重复的文件.我很快意识到要完成我想要的东西,我需要比较多个文件属性.并非所有文件都是文本文件,比较文本主要是我发现的互联网上的示例代码,我正在尝试更多地了解二进制数据,因为比较字节数组和文件名是我能来的最好的起来.特别是我' m询问哪些属性最好进行比较,以便平衡查找重复项的准确性并能够处理合理大小的目录?如果你不介意我怎么能在我的代码中实现它?希望我的问题不是太可怕,我真的很感激我能得到的任何帮助.这就是我所拥有的,是的,我在这里找到的几个方法和第二个文件,以防你想知道.PS我真的很抱歉,如果我错过任何无意义的变量,我试着在发布之前稍微清理一下代码 我想知道的几个方法和第二个文件,以防你想知道.PS我真的很抱歉,如果我错过任何无意义的变量,我试着在发布之前稍微清理一下代码 我想知道的几个方法和第二个文件,以防你想知道.PS我真的很抱歉,如果我错过任何无意义的变量,我试着在发布之前稍微清理一下代码

ListFilesInDir.java

import java.io.*;
import java.nio.file.Files;
import java.nio.file.attribute.*;
import java.security.*;
import java.util.*;

public final class ListFilesInDir {

static File startingDir;

static List<File> files;
static List<File> dirs;
static TreeMap<Integer, File> duplicates;
static ArrayList<Integer> usedIndexes = new ArrayList<Integer>();
static ArrayList<File> duplicateList = new ArrayList<File>();

static File out = new File("ListDuplicateFiles.txt");
static PrintWriter output;

static int key = 0;
static String tabString;
static TreeMap<Integer, File> tMap = new TreeMap<Integer, File>();

static int num1 = 0;
static int num2 = 0; …
Run Code Online (Sandbox Code Playgroud)

java file-io

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

file-io ×1

java ×1