Class Base64

java.lang.Object
com.pengrad.telegrambot.passport.decrypt.Base64

public class Base64
extends java.lang.Object
Utilities for encoding and decoding the Base64 representation of binary data. See RFCs 2045 and 3548.
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static int CRLF
    Encoder flag bit to indicate lines should be terminated with a CRLF pair instead of just an LF.
    static int DEFAULT
    Default values for encoder/decoder flags.
    static int NO_CLOSE
    Flag to pass to {Base64OutputStream} to indicate that it should not close the output stream it is wrapping when it itself is closed.
    static int NO_PADDING
    Encoder flag bit to omit the padding '=' characters at the end of the output (if any).
    static int NO_WRAP
    Encoder flag bit to omit all line terminators (i.e., the output will be on one long line).
    static int URL_SAFE
    Encoder/decoder flag bit to indicate using the "URL and filename safe" variant of Base64 (see RFC 3548 section 4) where - and _ are used in place of + and /.
  • Method Summary

    Modifier and Type Method Description
    static byte[] decode​(byte[] input, int flags)
    Decode the Base64-encoded data in input and return the data in a new byte array.
    static byte[] decode​(byte[] input, int offset, int len, int flags)
    Decode the Base64-encoded data in input and return the data in a new byte array.
    static byte[] decode​(java.lang.String str, int flags)
    Decode the Base64-encoded data in input and return the data in a new byte array.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DEFAULT

      public static final int DEFAULT
      Default values for encoder/decoder flags.
      See Also:
      Constant Field Values
    • NO_PADDING

      public static final int NO_PADDING
      Encoder flag bit to omit the padding '=' characters at the end of the output (if any).
      See Also:
      Constant Field Values
    • NO_WRAP

      public static final int NO_WRAP
      Encoder flag bit to omit all line terminators (i.e., the output will be on one long line).
      See Also:
      Constant Field Values
    • CRLF

      public static final int CRLF
      Encoder flag bit to indicate lines should be terminated with a CRLF pair instead of just an LF. Has no effect if NO_WRAP is specified as well.
      See Also:
      Constant Field Values
    • URL_SAFE

      public static final int URL_SAFE
      Encoder/decoder flag bit to indicate using the "URL and filename safe" variant of Base64 (see RFC 3548 section 4) where - and _ are used in place of + and /.
      See Also:
      Constant Field Values
    • NO_CLOSE

      public static final int NO_CLOSE
      Flag to pass to {Base64OutputStream} to indicate that it should not close the output stream it is wrapping when it itself is closed.
      See Also:
      Constant Field Values
  • Method Details

    • decode

      public static byte[] decode​(java.lang.String str, int flags)
      Decode the Base64-encoded data in input and return the data in a new byte array.

      The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.

      Parameters:
      str - the input String to decode, which is converted to bytes using the default charset
      flags - controls certain features of the decoded output. Pass DEFAULT to decode standard Base64.
      Throws:
      java.lang.IllegalArgumentException - if the input contains incorrect padding
    • decode

      public static byte[] decode​(byte[] input, int flags)
      Decode the Base64-encoded data in input and return the data in a new byte array.

      The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.

      Parameters:
      input - the input array to decode
      flags - controls certain features of the decoded output. Pass DEFAULT to decode standard Base64.
      Throws:
      java.lang.IllegalArgumentException - if the input contains incorrect padding
    • decode

      public static byte[] decode​(byte[] input, int offset, int len, int flags)
      Decode the Base64-encoded data in input and return the data in a new byte array.

      The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.

      Parameters:
      input - the data to decode
      offset - the position within the input array at which to start
      len - the number of bytes of input to decode
      flags - controls certain features of the decoded output. Pass DEFAULT to decode standard Base64.
      Throws:
      java.lang.IllegalArgumentException - if the input contains incorrect padding