19

Just like the title says, I am trying to encode a string "test" into base32 string "ORSXG5A=" in Java.

All I find when searching online is classes that encodes from string to array with 32bits, but obviously that is not what I want.

Sorry for this newbie question.

Daniele Testa
  • 1,202
  • 3
  • 13
  • 29
  • If you can't find a canned Base32 converter you can find a Base64 one and modify it -- same principles only simpler. – Hot Licks Feb 02 '14 at 20:23

2 Answers2

34

Apache commons-codec provides a Base32 class that does just that

Base32 base32 = new Base32();
System.out.println(base32.encodeAsString("test".getBytes()));

prints

ORSXG5A=

You can download it here.

Sotirios Delimanolis
  • 263,859
  • 56
  • 671
  • 702
12

As @Sotirios Delimanolis wrote it can be done using apache commons but you can also use google guava libraries. For example:

BaseEncoding.base32().encode("test".getBytes());

will return ORSXG5A=.

More information can be found here.

ingh.am
  • 25,104
  • 42
  • 127
  • 177
pepuch
  • 5,998
  • 6
  • 48
  • 81