简体   繁体   English

使用Java中的系统时间的唯一文件名?

[英]Unique File name using system time in Java?

I want to use unique id for the files. 我想为文件使用唯一ID。 How can I use system time to generate unique IDs in Java? 如何使用系统时间在Java中生成唯一ID?

你正在寻找UUID课程

UUID class is what you need. UUID类是您所需要的。

Sample implementation : 示例实施:

public class RandomStringUUID {

    public static void main(String[] args) {
                UUID uuid = UUID.randomUUID();
                String randomUUIDString = uuid.toString();

                System.out.println("Random UUID String = " + randomUUIDString);
                System.out.println("UUID version       = " + uuid.version());
                System.out.println("UUID variant       = " + uuid.variant());
           }
      }

Output : 输出:

Random UUID String = 7dc53df5-703e-49b3-8670-b1c468f47f1f
UUID version       = 4
UUID variant       = 2

You can use System.currentTimeInMillis 您可以使用System.currentTimeInMillis

or 要么

java.util.UUID.randomUUID() java.util.UUID.randomUUID()

I'd recommend using File.createTempFile(String prefix, String suffix) which creates an empty file that doesn't collide with anything else on the file system. 我建议使用File.createTempFile(String prefix, String suffix) ,它创建一个不会与文件系统上的任何其他内容冲突的空文件。

You can use File.deleteOnExit to ensure that it's deleted when the program exits. 您可以使用File.deleteOnExit确保在程序退出时将其删除。

Does it have to be based on the system time? 它必须基于系统时间吗? Can't you just use a UUID? 你不能只使用UUID吗?

java.util.UUID.randomUUID();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM