我正在开发一个数据迁移项目,其中包含来自 SQL Server 查询的二进制字符串,这些字符串以字符串格式“0xFF...”出现。我需要将它们转换为底层二进制数据的 base64 编码字符串,以便新系统读取和存储。
我在网上找到的所有内容似乎都是指编码常规字符串或字节数组,但这些似乎对我不起作用。目前我正在使用
Base64.getEncoder().encodeToString(HexString.getBytes());
但这只是将字符串编码为base64,我需要首先将字符串转换为二进制,这样我就可以将其编码为base64。
如果HEX值等于“0xFF”,则将其字符串处理为“FF”。然后,使用下面的代码来处理它。我希望这能满足您的期望。
String hexString = "FF";
int decimalValue = Integer.parseInt(hexString, 16);
String binaryString = Integer.toBinaryString(decimalValue);
Base64.getEncoder().encodeToString(binaryString.getBytes());