c# - 二进制的最佳字符串表示

标签 c# encoding key binary-data

我需要使用 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/

相关文章:

c# - Datareader 在 VS 中不返回任何结果,但存储过程在 Sql Server 中返回多个结果集

python - 如何有效地将整数映射到多维数组中的 URI?

iphone - 使用 writeToFile :atomically:encoding:error: vs. createFileAtPath:contents:attributes: 时的不同编码结果:

python - Django:使用对象作为字典键是否合理?

JavaFX TextField 覆盖按键 UP/DOWN 行为

c# - Json.Net 结合序列化的 2 个属性

c# - 是否可以通过 HwndHost 控件绘制 WPF 控件?

ssl - 生成并提交 csr 后,我可以删除 ssl key 上的密码吗?

c# - 如何在 Windows Phone 8 中执行某些功能后显示 toast

java - JDBC 和 MySQL 的编码问题