当前位置: 首页 > 面试题库 >

Java文件等于

郭修平
2023-03-14
问题内容

我不了解你们,但是至少我期望在下面的代码中f1等于f2,但是显然不是这样!您对此有何看法?看来我必须编写自己的equals方法来支持它,对吗?

import java.io.*;

public class FileEquals
{
    public static void main(String[] args)
    {
        File f1 = new File("./hello.txt");
        File f2 = new File("hello.txt");
        System.out.println("f1: " + f1.getName());
        System.out.println("f2: " + f2.getName());
        System.out.println("f1.equals(f2) returns " + f1.equals(f2));
        System.out.println("f1.compareTo(f2) returns " + f1.compareTo(f2));
    }
}

问题答案:

不,不是这样。因为 equals 在比较绝对路径的相等性(在您的情况下,它类似于:

some-project\.\hello.txt
some-project\hello.txt

因此,它们自然是不同的。

看来我必须编写自己的equals方法来支持它,对吗?

可能是。但是首先,您必须知道要比较什么?仅路径名?如果是,请按照以下方式比较其规范路径:

f1.getCanonicalPath().equals(f2.getCanonicalPath())

但是,如果您想比较两个不同文件的内容,那么 可以 ,您应该编写自己的方法-或只是从Internet上的某个地方复制即可。



 类似资料:
  • 问题内容: 成功创建一些applet之后,我将它们嵌入到网页中,发现必须包含所有类文件。留下一个,它将无法正常工作。 在对Applet进行几次迭代之后,将有几个类文件: filename .class filename $ 1.class filename $ 2.class等。 我尝试仅使用 文件名 .class,仅尝试了最后一个,尝试了第一个和最后一个…,但是,正如我所说的,该网页必须包含所有

  • 问题内容: 这个问题已经在这里有了答案 : 是否可以倒带PDO结果? (5个答案) 7年前关闭。 相当于使用pdo对象的mysql_data_seek?能给我举个例子? 谢谢! 问题答案: 通常的答案是:您的数据直接在数组中查找吗…但是如果查询获取大量数据(!),这是错误的。 有2种实际的解决方案, 1) 如果数据库允许使用 或,例如, (编辑)但是,正如@ChoiZ所评论的那样,有一个PDO-

  • 本文向大家介绍如何基于java实现解压ZIP TAR等文件,包括了如何基于java实现解压ZIP TAR等文件的使用技巧和注意事项,需要的朋友参考一下   java实现对常用.ZIP , .TAR, .TAR.BZ2, .BZ2 ,.TAR.GZ ,.GZ格式文件的解压。   首先需要引入maven依赖,这里使用的是Apache的压缩工具包common-compress,改工具包支持解压、压缩,此

  • 问题内容: 我将其作为一个单独的问题发布的原因是,我已经问过的一个问题得到了正确回答。通过一些研究,我发现我的问题是我所遇到的问题所独有的,因此我决定创建一个新问题。由于它们关系密切,因此请先阅读该问题,然后再继续进行此问题。 运行建议的代码会在waitFor调用时阻止程序。经过一番研究,我发现,如果您的进程具有需要处理的输出,则waitFor方法会阻塞,因此您应该首先清空输出流和错误流。我做了这

  • 我想问Java中是否有一种方法可以读取,基本上是任何文件格式(N3,JSON,RDF-XML)等,然后将其转换为海龟(. ttl)。我在谷歌上搜索了一些想法,但他们主要只是解释特定的文件类型以及如何将文件类型转换为RDF,而我希望它以另一种方式。 编辑(按照答案中给出的代码示例): 我已将“eclipse-rdf4j-3.0.3-onejar.jar”添加到NetBeans中的Libraries文

  • 问题内容: 在C#中,有一个文本框事件,如下所示 文本框内的文本更改后,将触发fooText_TextChanged中的代码。 Java等效于什么?或者如何在Java中实现与此类似的功能? 感谢您的任何反馈/帮助/建议。 问题答案: 对于Swing,如果希望在文本组件的文本更改 后 收到通知,则可以使用添加到JTextComponent的Document中的DocumentListener。例如,