【发布时间】:2011-07-07 06:41:34
【问题描述】:
我们需要将大量的 UUID 转换为与 xml 兼容的字符串。如果我们使用 Base32 算法(将每 5 位映射到 32 个字符之一),这将导致 26 个字符字符串,如果我们使用 Base62 算法(迭代地将 128 位整数除以 62 并将模数记录为 62 个字符之一) 这导致 22 个字符字符串。虽然 base62 返回较短的字符串,但它对 cpu 的占用率更高,因此我们坚持使用 Base32(Base64 不是一个选项,因为 xml)。
您知道任何其他类型的编码算法可以帮助我们吗?是否有类似 Base32 的位模式编码算法的变体可以与不是 2 的幂的基一起使用?或者是否有混合算法将第一个算法的方法与第二个算法的方法结合起来?如果可能,我们希望将 char 字符串减少到少于 26 个。
【问题讨论】: