首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Java中将UUID编码为Base62 (不是Base64)

在Java中将UUID编码为Base62 (不是Base64)
EN

Stack Overflow用户
提问于 2018-09-20 05:59:09
回答 1查看 4.5K关注 0票数 4

我正在尝试缩短UUID值(在数据库中存储为UUID,而不是字符串)以嵌入到URL中。我知道网址的Base64,但试着看看我是否可以使它没有破折号和下划线字符。所以我想把UUID转换成base62。在谷歌了很多次之后,我发现:

  1. 没有标准,比如RFC2045,对吗?,

  1. ,最重要的是,没有合适的实现。我发现了很多关于如何做到这一点的代码片段,但有一些注释是“这是一个幼稚的实现”或其他什么。
  2. 在Apache Commons Codec和Guava中有一些为Base32和Base64扩展的基类,但我发现为Base62扩展它并不容易。是否有可能做到这一点(考虑到映射从根本上说是不同的)?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2021-08-24 19:54:58

编解码器Base62Codec可以有效地将UUID编码为base-62。

代码语言:javascript
复制
// Returns a base-62 string
// uuid::: 01234567-89AB-4DEF-A123-456789ABCDEF
// base62: 0296tiiBY28FKCYq1PVSGd
String string = Base62Codec.INSTANCE.encode(uuid);

uuid-creator的同一个package中有其他编码的编解码器。

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

https://stackoverflow.com/questions/52414740

复制
相关文章

相似问题

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