编码和解码base64字符串到十进制字符串coddec

时间:2011-09-23 11:28:17

标签: java encoding base64 decoding

我有一个像这样的base64字符串=“pCZXOVjpnlePyDk6znZrSw ==”我需要一个编码器/解码器将其转换为十进制字符串,如此=“84587163248712923874”
有没有编解码器可以做到这一点?

2 个答案:

答案 0 :(得分:2)

您可能需要两个阶段的过程:

  1. 将Base64字符串转换为字节数组。
  2. 将字节数组转换为数字。
  3. 对于Java来说,16个字节太大了,所以我假设你需要一个BigInteger。有一个BigInteger构造函数将字节数组作为参数,但您需要注意符号位。 toString()的{​​{1}}方法会为您提供所需的字符串。

答案 1 :(得分:2)

Base64编码/解码现在是(最终)默认库的一部分。查看类 javax.xml.bind.DatatypeConverter 。在那里你会发现两种方法 printBase64Binary parseBase64Binary (以及其他一些转换例程)。