Class UtfOps

java.lang.Object
com.sleepycat.util.UtfOps

public class UtfOps extends Object
UTF operations with more flexibility than is provided by DataInput and DataOutput.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    bytesToChars(byte[] bytes, int byteOffset, char[] chars, int charOffset, int len, boolean isByteLen)
    Converts byte arrays into character arrays.
    static String
    bytesToString(byte[] bytes, int offset, int length)
    Converts byte arrays into strings.
    static void
    charsToBytes(char[] chars, int charOffset, byte[] bytes, int byteOffset, int charLength)
    Converts character arrays into byte arrays.
    static int
    getByteLength(char[] chars)
    Returns the byte length of the UTF string that would be created by converting the given characters to UTF.
    static int
    getByteLength(char[] chars, int offset, int length)
    Returns the byte length of the UTF string that would be created by converting the given characters to UTF.
    static int
    getCharLength(byte[] bytes)
    Returns the number of characters represented by the given UTF string.
    static int
    getCharLength(byte[] bytes, int offset, int length)
    Returns the number of characters represented by the given UTF string.
    static int
    getZeroTerminatedByteLength(byte[] bytes, int offset)
    Returns the byte length of a null terminated UTF string, not including the terminator.
    static byte[]
    Converts strings to byte arrays.

    Methods inherited from class java.lang.Object

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

    • UtfOps

      public UtfOps()
  • Method Details

    • getZeroTerminatedByteLength

      public static int getZeroTerminatedByteLength(byte[] bytes, int offset) throws IndexOutOfBoundsException
      Returns the byte length of a null terminated UTF string, not including the terminator.
      Parameters:
      bytes - the data containing the UTF string.
      offset - the beginning of the string the measure.
      Returns:
      the number of bytes.
      Throws:
      IndexOutOfBoundsException - if no zero terminator is found.
    • getByteLength

      public static int getByteLength(char[] chars)
      Returns the byte length of the UTF string that would be created by converting the given characters to UTF.
      Parameters:
      chars - the characters that would be converted.
      Returns:
      the byte length of the equivalent UTF data.
    • getByteLength

      public static int getByteLength(char[] chars, int offset, int length)
      Returns the byte length of the UTF string that would be created by converting the given characters to UTF.
      Parameters:
      chars - the characters that would be converted.
      offset - the first character to be converted.
      length - the number of characters to be converted.
      Returns:
      the byte length of the equivalent UTF data.
    • getCharLength

      public static int getCharLength(byte[] bytes) throws IllegalArgumentException, IndexOutOfBoundsException
      Returns the number of characters represented by the given UTF string.
      Parameters:
      bytes - the UTF string.
      Returns:
      the number of characters.
      Throws:
      IndexOutOfBoundsException - if a UTF character sequence at the end of the data is not complete.
      IllegalArgumentException - if an illegal UTF sequence is encountered.
    • getCharLength

      public static int getCharLength(byte[] bytes, int offset, int length) throws IllegalArgumentException, IndexOutOfBoundsException
      Returns the number of characters represented by the given UTF string.
      Parameters:
      bytes - the data containing the UTF string.
      offset - the first byte to be converted.
      length - the number of byte to be converted.
      Throws:
      IndexOutOfBoundsException - if a UTF character sequence at the end of the data is not complete.
      IllegalArgumentException - if an illegal UTF sequence is encountered.
    • bytesToChars

      public static int bytesToChars(byte[] bytes, int byteOffset, char[] chars, int charOffset, int len, boolean isByteLen) throws IllegalArgumentException, IndexOutOfBoundsException
      Converts byte arrays into character arrays.
      Parameters:
      bytes - the source byte data to convert
      byteOffset - the offset into the byte array at which to start the conversion
      chars - the destination array
      charOffset - the offset into chars at which to begin the copy
      len - the amount of information to copy into chars
      isByteLen - if true then len is a measure of bytes, otherwise len is a measure of characters
      Throws:
      IndexOutOfBoundsException - if a UTF character sequence at the end of the data is not complete.
      IllegalArgumentException - if an illegal UTF sequence is encountered.
    • charsToBytes

      public static void charsToBytes(char[] chars, int charOffset, byte[] bytes, int byteOffset, int charLength)
      Converts character arrays into byte arrays.
      Parameters:
      chars - the source character data to convert
      charOffset - the offset into the character array at which to start the conversion
      bytes - the destination array
      byteOffset - the offset into bytes at which to begin the copy
      charLength - the length of characters to copy into bytes
    • bytesToString

      public static String bytesToString(byte[] bytes, int offset, int length) throws IllegalArgumentException, IndexOutOfBoundsException
      Converts byte arrays into strings.
      Parameters:
      bytes - the source byte data to convert
      offset - the offset into the byte array at which to start the conversion
      length - the number of bytes to be converted.
      Returns:
      the string.
      Throws:
      IndexOutOfBoundsException - if a UTF character sequence at the end of the data is not complete.
      IllegalArgumentException - if an illegal UTF sequence is encountered.
    • stringToBytes

      public static byte[] stringToBytes(String string)
      Converts strings to byte arrays.
      Parameters:
      string - the string to convert.
      Returns:
      the UTF byte array.