我正在处理一个需要一些base64编码的小任务。我正在努力做到这一点,但会迷路。数字长到base64字符
我在java中长格式的13位数字,说:1294705313608,1294705313594,1294705313573
我做一些处理它,bascially我拿这个数字与东西追加它把它放在一个字节数组,然后转换它以base64使用:
String b64String = new sun.misc.BASE64Encoder().encodeBuffer(bArray);
现在,我知道对于我的原始数字,前3位数字永远不会改变。所以上面的数字是129。我想知道这些数字对应的字符数在合成的base64字符串中不会改变。
将字符串长序列化的代码。我忽略第2个字节,因为它们总是0:
bArray [0] =(字节)(时间>>> 40);
bArray [1] =(byte)(time >>> 32);
bArray [2] =(byte)(time >>> 24);
bArray [3] =(byte)(time >>> 16);
bArray [4] =(byte)(time >>> 8);
bArray [5] =(byte)(time >>> 0);
谢谢。
注: 我知道的base64将采取6位,使一个字符出来。所以如果前3个数字不会改变多少个字符在base64中不会改变。 这不是一个硬件分配,但我不是很熟悉编码。
我认为这是家庭作业,但没有标记为这样。 – 2011-01-11 02:53:34
你可以发布你使用的序列化长字节数组与其他“东西”的代码吗? – dkarp 2011-01-11 02:53:53