Class CharsetInfo

java.lang.Object
ghidra.program.model.data.CharsetInfo

public class CharsetInfo extends Object
Additional information about java.nio.charset.Charset's that Ghidra needs to be able to create Ghidra string datatype instances.

See charset_info.xml to specify a custom charset.

  • Field Details

  • Method Details

    • getInstance

      public static CharsetInfo getInstance()
      Get the global singleton instance of this CharsetInfo.
      Returns:
      global singleton instance
    • isBOMCharset

      public static boolean isBOMCharset(String charsetName)
      Parameters:
      charsetName - name of charset
      Returns:
      true if the supported multi-byte charset does not specify LE or BE
    • reinitializeWithUserDefinedCharsets

      public static void reinitializeWithUserDefinedCharsets()
      Reinitialize registered Charsets and include user defined Charsets specified in charset_info.xml.
    • getCharsetNames

      public String[] getCharsetNames()
      Returns an array list of the currently configured charsets.
      Returns:
      String[] of current configured charsets.
    • getCharsetCharSize

      public int getCharsetCharSize(String charsetName)
      Returns the number of bytes that the specified charset needs to specify a character.
      Parameters:
      charsetName - charset name
      Returns:
      number of bytes in a character, ie. 1, 2, 4, etc, defaults to 1 if charset is unknown or not specified in config file.
    • getCharsetNamesWithCharSize

      public List<String> getCharsetNamesWithCharSize(int size)
      Returns list of Charsets that encode with the number of bytes specified.
      Parameters:
      size - the number of bytes for the Charset encoding.
      Returns:
      Charsets that encode one byte characters.