簡體   English   中英

在Java中將Base64字符串轉換為字節值字符串

[英]Convert Base64 String to Byte Value String in Java

我有一個Base64字符串,它是'AAAC',二進制相當於3字節(00000000 00000000 00000010)。

我想將'AAAC'轉換為ASCII Hex Byte String以輸出類似'000002'的內容。

我試過下面的。

byte[] test = Base64.decode(data.getBytes());
StringBuilder sb = new StringBuilder();
for (byte b : test) {
    sb.append(String.format("%02X ", b));
}
System.out.println(sb.toString()); 
//Output: 00 00 02 

這有效,但是有更方便的方法嗎?

任何幫助,將不勝感激。 提前致謝。

您可以使用DatatypeConverter類:

String result =
    DatatypeConverter.printHexBinary(DatatypeConverter
        .parseBase64Binary("AAAC"));

System.out.println(result);

印刷品: 000002

使用Guava庫 ,這可能看起來像

BaseEncoding.base16().toUpperCase().withSeparator(" ", 2)
  .encode(BaseEncoding.base64().decode(data));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM