Class BinaryEncoder


  • public class BinaryEncoder
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      BinaryEncoder​(java.io.BufferedWriter writer)
      Creates an encoder to make a BufferedWriter write byte/int arrays as Strings.
      BinaryEncoder​(java.io.BufferedWriter writer, int bitsPerCharacter, int baseCharacter, int lineLength)
      Instantiates an encoder for byte/int arrays to String.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void finalize()
      Writes remaining bits from buffer, if there are any and possibly adds final NL/LF.
      void initialize​(int dataBitCount, int totalByteCount)
      Initializes encoder for writing one binary array
      static java.lang.String toString​(byte[] data, int dataBitCount)
      Convenience method to directly encode a byte array into a String Uses 6 bits per character using 64 characters from '@' (ASCII 64).
      static java.lang.String toString​(int[] data, int dataBitCount)
      Convenience method to directly encode an int array into a String Uses 6 bits per character using 64 characters from '@' (ASCII 64).
      void write​(int data)
      Encodes and writes one data value
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • BinaryEncoder

        public BinaryEncoder​(java.io.BufferedWriter writer)
        Creates an encoder to make a BufferedWriter write byte/int arrays as Strings. This version uses 6 bits per character using 64 characters from '@' (ASCII 64). It inserts a platform specific newline/linefeed after every 80 characters.
        Parameters:
        writer -
      • BinaryEncoder

        public BinaryEncoder​(java.io.BufferedWriter writer,
                             int bitsPerCharacter,
                             int baseCharacter,
                             int lineLength)
        Instantiates an encoder for byte/int arrays to String.
        Parameters:
        writer -
        bitsPerCharacter - no of bits to be used per character
        baseCharacter - lowest character, which encodes value '0'
        lineLength - -1 (no LF/NL) or count of character after which a NL/LF is inserted
    • Method Detail

      • toString

        public static java.lang.String toString​(int[] data,
                                                int dataBitCount)
        Convenience method to directly encode an int array into a String Uses 6 bits per character using 64 characters from '@' (ASCII 64).
        Parameters:
        data -
        dataBitCount -
        Returns:
      • toString

        public static java.lang.String toString​(byte[] data,
                                                int dataBitCount)
        Convenience method to directly encode a byte array into a String Uses 6 bits per character using 64 characters from '@' (ASCII 64).
        Parameters:
        data -
        dataBitCount -
        Returns:
      • initialize

        public void initialize​(int dataBitCount,
                               int totalByteCount)
                        throws java.io.IOException
        Initializes encoder for writing one binary array
        Parameters:
        dataBitCount - count of bits to be written per data value
        totalByteCount - count of data values to be encoded
        Throws:
        java.io.IOException
      • write

        public void write​(int data)
                   throws java.io.IOException
        Encodes and writes one data value
        Parameters:
        data -
        Throws:
        java.io.IOException
      • finalize

        public void finalize()
                      throws java.io.IOException
        Writes remaining bits from buffer, if there are any and possibly adds final NL/LF.
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.io.IOException