用Java生成唯一且简短的文件名的最佳方法是什么

发布于 2021-01-31 15:24:46

我不一定要使用UUID,因为它们相当长。

该文件只需要在其目录中是唯一的。

我想到的一个想法是使用File.createTempFile(String prefix, String suffix),但这似乎是错误的,因为该文件不是临时文件。

需要处理在同一毫秒内创建的两个文件的情况。

关注者
0
被浏览
112
1 个回答
  • 面试哥
    面试哥 2021-01-31
    为面试而生,有面试问题,就找面试哥。

    好吧,您可以使用3个参数的版本:File.createTempFile(String prefix, String suffix, File directory)它将让您将其放置在所需的位置。除非您告知,否则Java将不会像对待其他任何文件一样对待它。唯一的缺点是,文件名必须保证至少8个字符长(前缀至少3个字符,再加上该函数生成的5个或更多字符)。

    如果那对您来说太长了,我想您总是可以从文件名“ a”开始,然后遍历“ b”,“ c”等,直到找到一个不存在的文件名。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看