Class Base32
- All Implemented Interfaces:
- BinaryDecoder,- BinaryEncoder,- Decoder,- Encoder
The class can be parameterized in the following manner with various constructors:
- Whether to use the "base32hex" variant instead of the default "base32"
- Line length: Default 76. Line length that aren't multiples of 8 will still essentially end up being multiples of 8 in the encoded data.
- Line separator: Default is CRLF ("\r\n")
This class operates directly on byte streams, and not character streams.
This class is thread-safe.
 You can configure instances with the Base32.Builder.
 
 Base32 base32 = Base32.builder()
   .setDecodingPolicy(DecodingPolicy.LENIENT) // default is lenient
   .setEncodeTable(customEncodeTable)
   .setLineLength(0)                          // default is none
   .setLineSeparator('\r', '\n')              // default is CR LF
   .setPadding('=')                           // default is =
   .get()
 - Since:
- 1.5
- See Also:
- 
Nested Class SummaryNested ClassesNested classes/interfaces inherited from class org.apache.commons.codec.binary.BaseNCodecBaseNCodec.AbstractBuilder<T,B extends BaseNCodec.AbstractBuilder<T, B>> 
- 
Field SummaryFields inherited from class org.apache.commons.codec.binary.BaseNCodecDECODING_POLICY_DEFAULT, lineLength, MASK_8BITS, MIME_CHUNK_SIZE, pad, PAD, PAD_DEFAULT, PEM_CHUNK_SIZE
- 
Constructor SummaryConstructorsConstructorDescriptionBase32()Constructs a Base32 codec used for decoding and encoding.Base32(boolean useHex) Constructs a Base32 codec used for decoding and encoding.Base32(boolean useHex, byte padding) Constructs a Base32 codec used for decoding and encoding.Base32(byte pad) Constructs a Base32 codec used for decoding and encoding.Base32(int lineLength) Constructs a Base32 codec used for decoding and encoding.Base32(int lineLength, byte[] lineSeparator) Constructs a Base32 codec used for decoding and encoding.Base32(int lineLength, byte[] lineSeparator, boolean useHex) Constructs a Base32 / Base32 Hex codec used for decoding and encoding.Base32(int lineLength, byte[] lineSeparator, boolean useHex, byte padding) Constructs a Base32 / Base32 Hex codec used for decoding and encoding.Base32(int lineLength, byte[] lineSeparator, boolean useHex, byte padding, CodecPolicy decodingPolicy) Constructs a Base32 / Base32 Hex codec used for decoding and encoding.
- 
Method SummaryModifier and TypeMethodDescriptionstatic Base32.Builderbuilder()Creates a new Builder.booleanisInAlphabet(byte octet) Returns whether or not theoctetis in the Base32 alphabet.Methods inherited from class org.apache.commons.codec.binary.BaseNCodeccontainsAlphabetOrPad, decode, decode, decode, encode, encode, encode, encodeAsString, encodeToString, ensureBufferSize, getChunkSeparator, getCodecPolicy, getDefaultBufferSize, getEncodedLength, isInAlphabet, isInAlphabet, isStrictDecoding, isWhiteSpace
- 
Constructor Details- 
Base32public Base32()Constructs a Base32 codec used for decoding and encoding.When encoding the line length is 0 (no chunking). 
- 
Base32Constructs a Base32 codec used for decoding and encoding.When encoding the line length is 0 (no chunking). - Parameters:
- useHex- if- truethen use Base32 Hex alphabet
 
- 
Base32Constructs a Base32 codec used for decoding and encoding.When encoding the line length is 0 (no chunking). - Parameters:
- useHex- if- truethen use Base32 Hex alphabet
- padding- byte used as padding byte.
 
- 
Base32Constructs a Base32 codec used for decoding and encoding.When encoding the line length is 0 (no chunking). - Parameters:
- pad- byte used as padding byte.
 
- 
Base32Constructs a Base32 codec used for decoding and encoding.When encoding the line length is given in the constructor, the line separator is CRLF. - Parameters:
- lineLength- Each line of encoded data will be at most of the given length (rounded down to the nearest multiple of 8). If lineLength <= 0, then the output will not be divided into lines (chunks). Ignored when decoding.
 
- 
Base32Constructs a Base32 codec used for decoding and encoding.When encoding the line length and line separator are given in the constructor. Line lengths that aren't multiples of 8 will still essentially end up being multiples of 8 in the encoded data. - Parameters:
- lineLength- Each line of encoded data will be at most of the given length (rounded down to the nearest multiple of 8). If lineLength <= 0, then the output will not be divided into lines (chunks). Ignored when decoding.
- lineSeparator- Each line of encoded data will end with this sequence of bytes.
- Throws:
- IllegalArgumentException- Thrown when the- lineSeparatorcontains Base32 characters.
 
- 
Base32Constructs a Base32 / Base32 Hex codec used for decoding and encoding.When encoding the line length and line separator are given in the constructor. Line lengths that aren't multiples of 8 will still essentially end up being multiples of 8 in the encoded data. - Parameters:
- lineLength- Each line of encoded data will be at most of the given length (rounded down to the nearest multiple of 8). If lineLength <= 0, then the output will not be divided into lines (chunks). Ignored when decoding.
- lineSeparator- Each line of encoded data will end with this sequence of bytes.
- useHex- if- true, then use Base32 Hex alphabet, otherwise use Base32 alphabet
- Throws:
- IllegalArgumentException- Thrown when the- lineSeparatorcontains Base32 characters. Or the lineLength > 0 and lineSeparator is null.
 
- 
Base32Constructs a Base32 / Base32 Hex codec used for decoding and encoding.When encoding the line length and line separator are given in the constructor. Line lengths that aren't multiples of 8 will still essentially end up being multiples of 8 in the encoded data. - Parameters:
- lineLength- Each line of encoded data will be at most of the given length (rounded down to the nearest multiple of 8). If lineLength <= 0, then the output will not be divided into lines (chunks). Ignored when decoding.
- lineSeparator- Each line of encoded data will end with this sequence of bytes.
- useHex- if- true, then use Base32 Hex alphabet, otherwise use Base32 alphabet
- padding- padding byte.
- Throws:
- IllegalArgumentException- Thrown when the- lineSeparatorcontains Base32 characters. Or the lineLength > 0 and lineSeparator is null.
 
- 
Base32public Base32(int lineLength, byte[] lineSeparator, boolean useHex, byte padding, CodecPolicy decodingPolicy) Constructs a Base32 / Base32 Hex codec used for decoding and encoding.When encoding the line length and line separator are given in the constructor. Line lengths that aren't multiples of 8 will still essentially end up being multiples of 8 in the encoded data. - Parameters:
- lineLength- Each line of encoded data will be at most of the given length (rounded down to the nearest multiple of 8). If lineLength <= 0, then the output will not be divided into lines (chunks). Ignored when decoding.
- lineSeparator- Each line of encoded data will end with this sequence of bytes.
- useHex- use Base32 hexadecimal if- true, otherwise use the Base32 alphabet.
- padding- padding byte.
- decodingPolicy- The decoding policy.
- Throws:
- IllegalArgumentException- Thrown when the- lineSeparatorcontains Base32 characters. Or the lineLength > 0 and lineSeparator is null.
- Since:
- 1.15
 
 
- 
- 
Method Details- 
builderCreates a new Builder.- Returns:
- a new Builder.
- Since:
- 1.17.0
 
- 
isInAlphabetReturns whether or not theoctetis in the Base32 alphabet.- Specified by:
- isInAlphabetin class- BaseNCodec
- Parameters:
- octet- The value to test
- Returns:
- trueif the value is defined in the Base32 alphabet- falseotherwise.
 
 
-