What is the proper way to convert a byte [] to a Base64 string in Java? Better yet would be Grails / Groovy because it tells me that the encodeAsBase64()
function is deprecated. The sun.misc.BASE64Encoder
package isn't recommended for use and outputs a different size string on some Windows platforms.
The base 64 digits in ascending order from zero are the uppercase characters 'A' to 'Z', lowercase characters 'a' to 'z', numerals '0' to '9', and the symbols '+' and '/'. % is not allowed in base64 encoding.
No. The Base64 alphabet includes A-Z, a-z, 0-9 and + and / . You can replace them if you don't care about portability towards other applications.
The preferred way to do this in groovy is:
def encoded = "Hello World".bytes.encodeBase64().toString() assert encoded == "SGVsbG8gV29ybGQ=" def decoded = new String("SGVsbG8gV29ybGQ=".decodeBase64()) assert decoded == "Hello World"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With