首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在JAVA (UUID.randomUUID().toString()中生成UUID字符串的有效方法,无需破折号)

在JAVA (UUID.randomUUID().toString()中生成UUID字符串的有效方法,无需破折号)
EN

Stack Overflow用户
提问于 2010-09-27 22:05:52
回答 6查看 319.6K关注 0票数 193

我想要一个有效的实用程序来生成独特的字节序列。UUID是一个很好的候选者,但是UUID.randomUUID().toString()会生成像44e128a5-ac7a-4c9a-be4c-224b6bf81b20这样的东西,这很好,但我更喜欢没有破折号的字符串。

我正在寻找一种有效的方法来生成一个随机字符串,只从字母数字字符(没有破折号或任何其他特殊符号)。

EN

回答 6

Stack Overflow用户

发布于 2010-09-27 22:12:24

这就完成了:

代码语言:javascript
复制
public static void main(String[] args) {
    final String uuid = UUID.randomUUID().toString().replace("-", "");
    System.out.println("uuid = " + uuid);
}
票数 328
EN

Stack Overflow用户

发布于 2010-09-27 22:28:57

破折号不需要从HTTP请求中删除,正如您在此线程的URL中所看到的那样。但是,如果你想准备格式良好的网址而不依赖于数据,你应该使用URLEncoder.encode(字符串数据,字符串编码),而不是改变数据的标准格式。对于UUID字符串表示,破折号是正常的。

票数 37
EN

Stack Overflow用户

发布于 2010-09-28 06:00:09

我使用JUG (Java UUID Generator)来生成唯一的ID,它在JVM中是唯一的。非常好用。下面是供您参考的代码:

代码语言:javascript
复制
private static final SecureRandom secureRandom = new SecureRandom();
private static final UUIDGenerator generator = UUIDGenerator.getInstance();

public synchronized static String generateUniqueId() {
  UUID uuid = generator.generateRandomBasedUUID(secureRandom);

  return uuid.toString().replaceAll("-", "").toUpperCase();
}

可以从以下位置下载该库:https://github.com/cowtowncoder/java-uuid-generator

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3804591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档