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,538
  • 3
  • 16
  • 34
  • 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

36

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
  • 274,122
  • 60
  • 696
  • 724
15

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,981
  • 43
  • 130
  • 177
pepuch
  • 6,346
  • 7
  • 51
  • 84