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? P>
5 Réponses :
Cela doit-il être basé sur le temps système? Vous ne pouvez pas simplement utiliser un UUID?
java.util.UUID.randomUUID();
classe UUID est ce dont vous avez besoin .
Exemple de mise en oeuvre: strong> p> sortie: strong> p>
Vous pouvez utiliser System.CurrentTimeInmillis P>
ou p>
java.util.uuid.randomuuid () p>
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.
Je recommanderais d'utiliser fichier.createtempfile (chaîne préfixe, suffixe de chaîne) code> qui crée un fichier vide qui ne collide pas avec quoi que ce soit d'autre sur le système de fichiers. p>
Vous pouvez utiliser Fichier.deleteonexit code> pour vous assurer qu'il est supprimé lorsque le programme sort. P>
Oui. Mais cette méthode "crée" un fichier temporaire, que dans mon cas, n'est pas nécessaire.
Je ne veux pas utiliser Uuids. Est le système.CurrentTimeInmillis garanti d'être unique ??