Class QuotedPrintableDecoder


  • final class QuotedPrintableDecoder
    extends java.lang.Object
    Since:
    1.3
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static char CR
      Carriage return character '13'.
      private static char EQUAL
      Equal character '61'.
      private static char LF
      Line feed character '10'.
      private static char SP
      Space character '32'.
      private static char UNDERSCORE
      Underscore character '95'.
      private static int UPPER_NIBBLE_SHIFT
      The shift value required to create the upper nibble from the first of 2 byte values converted from ASCII hex.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private QuotedPrintableDecoder()
      Hidden constructor, this class must not be instantiated.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int decode​(byte[] data, java.io.OutputStream out)
      Decode the encoded byte data writing it to the given output stream.
      private static int hexToBinary​(byte b)
      Convert a hex digit to the binary value it represents.
      • Methods inherited from class java.lang.Object

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

      • UNDERSCORE

        private static final char UNDERSCORE
        Underscore character '95'.
        See Also:
        Constant Field Values
      • UPPER_NIBBLE_SHIFT

        private static final int UPPER_NIBBLE_SHIFT
        The shift value required to create the upper nibble from the first of 2 byte values converted from ASCII hex.
        See Also:
        Constant Field Values
    • Constructor Detail

      • QuotedPrintableDecoder

        private QuotedPrintableDecoder()
        Hidden constructor, this class must not be instantiated.
    • Method Detail

      • decode

        public static int decode​(byte[] data,
                                 java.io.OutputStream out)
                          throws java.io.IOException
        Decode the encoded byte data writing it to the given output stream.
        Parameters:
        data - The array of byte data to decode.
        out - The output stream used to return the decoded data.
        Returns:
        the number of bytes produced.
        Throws:
        java.io.IOException - if an IO error occurs
      • hexToBinary

        private static int hexToBinary​(byte b)
                                throws java.io.IOException
        Convert a hex digit to the binary value it represents.
        Parameters:
        b - the ASCII hex byte to convert (0-0, A-F, a-f)
        Returns:
        the int value of the hex byte, 0-15
        Throws:
        java.io.IOException - if the byte is not a valid hex digit.