【发布时间】:2017-12-09 14:39:38
【问题描述】:
我有这段代码可以告诉我这两个文件是否具有相同的内容。但是,我想将其扩展为不仅仅是一个文件,而是目录 Files。换句话说,将一个文件夹中的文件与另一个文件夹中的文件进行比较,看看它们是否具有相同或不同的内容,如果是,则将其打印出来。
这样做只是修改目录路径的问题吗?我的代码如下。我想我记得在某处我可能需要导入另一个库。任何帮助将不胜感激。
现在我遇到的问题是从相同和不同的区域打印出文件名我尝试过 .getName 它不起作用我的结果回来了(真)(而不是名称满足条件的文件个数
代码如下
import java.io.File;
public class F2FCompare {
public static void main(String[] args)
{
File folderA = new File("C:/Users/hoflerj/Desktop/FolderA");
File[] listOfFilesInA = folderA.listFiles();
File folderB = new File("/C:/Users/hoflerj/Desktop/FolderB");
File[] listOfFilesInB = folderB.listFiles();
for (File fileA : listOfFilesInA){
if (fileA.isFile())
{
for (File fileB : listOfFilesInB) {
if(fileB.isFile())
{
if ( fileA.equals(fileB))
{
System.out.println( "FolderA same as FolderB" + listOfFilesInA.equals(listOfFilesInB) );
//File[] files = folder.listFiles();
}
// txtfile.getName()
else
{
//System.out.println(! fileA.getName().equals(fileB) + " Folder A diff B" );
System.out.println( "Folder same as FolderB " + !fileA.getName().equals(fileB) );
}
}
}
}
}
}
}
【问题讨论】:
-
首先我建议你把这段代码放到一个方法中。然后找出一个算法来解决你的问题。为此,请关闭计算机并拿一张纸和铅笔。 用文字写出解决问题所需的步骤。不要过分担心 Java 语法。
标签: java