7
votes

Nom de fichier unique à l'aide du temps système à Java?

Je veux utiliser un identifiant unique pour les fichiers. Comment puis-je utiliser le temps système pour générer des identifiants uniques en Java?


1 commentaires

Je ne veux pas utiliser Uuids. Est le système.CurrentTimeInmillis garanti d'être unique ??


5 Réponses :


7
votes

Vous recherchez le uuid classe .


0 commentaires

0
votes

Cela doit-il être basé sur le temps système? Vous ne pouvez pas simplement utiliser un UUID?

java.util.UUID.randomUUID();


0 commentaires

4
votes

classe UUID est ce dont vous avez besoin .

Exemple de mise en oeuvre: xxx

sortie: xxx < / p>


0 commentaires

1
votes

Vous pouvez utiliser System.CurrentTimeInmillis

ou

java.util.uuid.randomuuid ()


2 commentaires

Je ne veux pas utiliser Uuids. Est le système.CurrentTimeInmillis garanti d'être unique ??


System.CurrentTimeInmillis -> "La différence, mesurée en millisecondes, entre l'heure actuelle et minuit, 1er janvier 1970 UTC." Vous pouvez ajouter le nom de LogNeDInSername pour garantir l'unicité des sessions simultanées.



2
votes

Je recommanderais d'utiliser fichier.createtempfile (chaîne préfixe, suffixe de chaîne) qui crée un fichier vide qui ne collide pas avec quoi que ce soit d'autre sur le système de fichiers.

Vous pouvez utiliser Fichier.deleteonexit pour vous assurer qu'il est supprimé lorsque le programme sort.


1 commentaires

Oui. Mais cette méthode "crée" un fichier temporaire, que dans mon cas, n'est pas nécessaire.