我已经仔细阅读过关于所发布问题的答案,但无法弄清楚.如果有人可以对此发表一点看法,我将非常感激:
我试图将base64字符串转换为二进制.我遇到了以下代码,并将base64字符串存储在字节数组中.如何将字节数组转换为二进制.
我发现的代码:
import org.apache.commons.codec.binary.Base64;
import java.util.Arrays;
public class Base64Decode {
public static void main(String[] args) {
String hello = "AAADccwwCBwOAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAB==";
byte[] decoded = Base64.decodeBase64(hello.getBytes());
System.out.println(Arrays.toString(decoded));
}
}
输出:
[0, 0, 3, 113, -52, 48, 8, 28, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0]
输出正确吗?当我查看一些有关base64转换的文档时,我注意到“ A”的等价项是0.数组在最后一个插槽中如何为零?它不等于“ B”.那我的数组不应该以三个0开头吗?如何将其转换为二进制(以0和1为单位)?