Class ByteConverter

java.lang.Object
org.postgresql.util.ByteConverter

public class ByteConverter extends Object
Helper methods to parse java base types from byte arrays.
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
    bool(byte[] bytes, int idx)
    Parses a boolean value from the byte array.
    static void
    bool(byte[] target, int idx, boolean value)
    Encodes a boolean value to the byte array.
    static int
    bytesToInt(byte[] bytes)
    Convert a variable length array of bytes to an integer
    static float
    float4(byte[] bytes, int idx)
    Parses a float value from the byte array.
    static void
    float4(byte[] target, int idx, float value)
    Encodes a int value to the byte array.
    static double
    float8(byte[] bytes, int idx)
    Parses a double value from the byte array.
    static void
    float8(byte[] target, int idx, double value)
    Encodes a int value to the byte array.
    static short
    int2(byte[] bytes, int idx)
    Parses a short value from the byte array.
    static void
    int2(byte[] target, int idx, int value)
    Encodes a int value to the byte array.
    static int
    int4(byte[] bytes, int idx)
    Parses an int value from the byte array.
    static void
    int4(byte[] target, int idx, int value)
    Encodes a int value to the byte array.
    static long
    int8(byte[] bytes, int idx)
    Parses a long value from the byte array.
    static void
    int8(byte[] target, int idx, long value)
    Encodes a long value to the byte array.
    static Number
    numeric(byte[] bytes)
    Convert a variable length array of bytes to an integer
    static Number
    numeric(byte[] bytes, int pos, int numBytes)
    Convert a variable length array of bytes to a Number.
    static byte[]
    Converts a non-null BigDecimal to binary format for Oid.NUMERIC.

    Methods inherited from class java.lang.Object

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

    • bytesToInt

      public static int bytesToInt(byte[] bytes)
      Convert a variable length array of bytes to an integer
      Parameters:
      bytes - array of bytes that can be decoded as an integer
      Returns:
      integer
    • numeric

      public static Number numeric(byte[] bytes)
      Convert a variable length array of bytes to an integer
      Parameters:
      bytes - array of bytes that can be decoded as an integer
      Returns:
      integer
    • numeric

      public static Number numeric(byte[] bytes, int pos, int numBytes)
      Convert a variable length array of bytes to a Number. The result will always be a BigDecimal or Double.NaN.
      Parameters:
      bytes - array of bytes to be decoded from binary numeric representation.
      pos - index of the start position of the bytes array for number
      numBytes - number of bytes to use, length is already encoded in the binary format but this is used for double checking
      Returns:
      BigDecimal representation of numeric or Double.NaN.
    • numeric

      public static byte[] numeric(BigDecimal nbr)
      Converts a non-null BigDecimal to binary format for Oid.NUMERIC.
      Parameters:
      nbr - The instance to represent in binary.
      Returns:
      The binary representation of nbr.
    • int8

      public static long int8(byte[] bytes, int idx)
      Parses a long value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index of the parse in the byte array.
      Returns:
      parsed long value.
    • int4

      public static int int4(byte[] bytes, int idx)
      Parses an int value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index of the parse in the byte array.
      Returns:
      parsed int value.
    • int2

      public static short int2(byte[] bytes, int idx)
      Parses a short value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index of the parse in the byte array.
      Returns:
      parsed short value.
    • bool

      public static boolean bool(byte[] bytes, int idx)
      Parses a boolean value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index to read from bytes.
      Returns:
      parsed boolean value.
    • float4

      public static float float4(byte[] bytes, int idx)
      Parses a float value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index of the parse in the byte array.
      Returns:
      parsed float value.
    • float8

      public static double float8(byte[] bytes, int idx)
      Parses a double value from the byte array.
      Parameters:
      bytes - The byte array to parse.
      idx - The starting index of the parse in the byte array.
      Returns:
      parsed double value.
    • int8

      public static void int8(byte[] target, int idx, long value)
      Encodes a long value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.
    • int4

      public static void int4(byte[] target, int idx, int value)
      Encodes a int value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.
    • int2

      public static void int2(byte[] target, int idx, int value)
      Encodes a int value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.
    • bool

      public static void bool(byte[] target, int idx, boolean value)
      Encodes a boolean value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.
    • float4

      public static void float4(byte[] target, int idx, float value)
      Encodes a int value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.
    • float8

      public static void float8(byte[] target, int idx, double value)
      Encodes a int value to the byte array.
      Parameters:
      target - The byte array to encode to.
      idx - The starting index in the byte array.
      value - The value to encode.