我需要使用 12 个字符长度的字符串来识别实体,该字符串仅包含数字和字母(不区分大小写),并且我想压缩最大数量的可能键值。
即JH45KJ2H2313
我知道我可以使用十六进制编码(0-9、A-F、每个字符 4 位 => 2^48 个值) 我想我必须排除 base64,因为它包含 2 个额外的字符(通常是 + 和/)。
我认为有更好的空间利用方式。 IE。如果 1 使用 0-9 + AZ 我可以在一个字符中存储 36 个值 ~ 4 位。
是否有编码标准或我需要自己实现编码/解码?
最佳答案
简短的回答:BCL 中没有 Base36 实现。您必须自己做或从其他地方获取。
关于c# - 二进制的最佳字符串表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21929774/