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

检查文件是否存在而不创建它

夏谦
2023-03-14
问题内容

如果我这样做:

File f = new File("c:\\text.txt");

if (f.exists()) {
    System.out.println("File exists");
} else {
    System.out.println("File not found!");
}

然后创建文件,并始终返回“文件存在”。是否可以不创建文件就检查文件是否存在?

编辑:

我忘了提到它处于for循环中。所以这是真实的东西:

for (int i = 0; i < 10; i++) {
    File file = new File("c:\\text" + i + ".txt");
    System.out.println("New file created: " + file.getPath());
}

问题答案:

实例化a时File,您并没有在磁盘上创建任何东西,而只是构建了一个可以调用某些方法的对象,例如exists()

既好又便宜,不要试图避免这种实例化。

File实例只有两个字段:

private String path;
private transient int prefixLength;

这是构造函数:

public File(String pathname) {
    if (pathname == null) {
        throw new NullPointerException();
    }
    this.path = fs.normalize(pathname);
    this.prefixLength = fs.prefixLength(this.path);
}

如您所见,File实例只是路径的封装。创建它以便进行调用exists()是继续进行的正确方法。不要试图对其进行优化。



 类似资料:
  • 我想检查文件是否存在,并尝试使用以下函数 但是,它似乎不能正常工作,因为不是检查文件的存在而是创建文件!这里有什么问题? 请注意,我被迫使用C 98标准,无法使用include

  • rank ▲ ✰ vote url 17 776 241 907 url 检查一个文件夹是否存在,如果不存在就创建它 有什么好的方法吗?这个是我想的: filename = "/my/directory/filename.txt" dir = os.path.dirname(filename) try: os.stat(dir) except: os.mkdir(dir) f

  • 问题内容: 尝试检查我要读取的文件是否存在。 问题答案: 这是另一种方法: 包装的用途和功能: p_DirName in varchar2, – schema object name p_FileName in varchar2 ) return number is l_file_loc bfile; begin l_file_loc := bfilename(upper(p_DirName),

  • 我想向文件输入一些内容,但我想首先检查是否存在具有我想要创建的名称的文件。如果是这样,我不想创建任何文件,即使文件是空的。 我的尝试 有什么办法可以做我想做的事吗?

  • 问题内容: 如何检查 文件 的存在? 在模块的文档中,有方法的说明。但是,据我了解,它只检查目录的存在。而且我需要检查 文件 ! 如何才能做到这一点? 问题答案: 为什么不尝试打开文件? 无论如何,经过一分钟的搜索,请尝试以下操作: 对于Node.js v0.12.x及更高版本 双方并已弃用 *编辑: 已更改: 至: 林特抱怨双重等于不是三次等于。 使用fs.stat:

  • 我有一种感觉,我在这件事上完全错了。但无论如何。 我有一个sql数据库,它本质上是一个有目的的非规范化表,我构造这个表是为了使这项任务对我来说更容易,所以我可以从一个表中获取内容。 我有一张成双成对的桌子,像这样: 等等 所以对于我的neo4j图数据库,我希望每个用户ID作为一个节点,其他的东西不是太重要,但基本上是关系中的东西。 我只希望每个用户有一个节点,所以我的感觉是,如果我这样做: 当我们