Class FormattableUtils

java.lang.Object
org.apache.commons.text.FormattableUtils

public class FormattableUtils extends Object
Provides utilities for working with the Formattable interface.

The Formattable interface provides basic control over formatting when using a Formatter. It is primarily concerned with numeric precision and padding, and is not designed to allow generalised alternate formats.

Since:
1.0
  • Constructor Details

    • FormattableUtils

      FormattableUtils instances should NOT be constructed in standard programming. Instead, the methods of the class should be invoked statically.

      This constructor is public to permit tools that require a JavaBean instance to operate.

  • Method Details

    • append

      public static Formatter append(CharSequence seq, Formatter formatter, int flags, int width, int precision)
      Handles the common Formattable operations of truncate-pad-append, with no ellipsis on precision overflow, and padding width underflow with spaces.
      Parameters:
      seq - the string to handle, not null
      formatter - the destination formatter, not null
      flags - the flags for formatting, see Formattable
      width - the width of the output, see Formattable
      precision - the precision of the output, see Formattable
      Returns:
      The formatter instance, not null
    • append

      public static Formatter append(CharSequence seq, Formatter formatter, int flags, int width, int precision, char padChar)
      Handles the common Formattable operations of truncate-pad-append, with no ellipsis on precision overflow.
      Parameters:
      seq - the string to handle, not null
      formatter - the destination formatter, not null
      flags - the flags for formatting, see Formattable
      width - the width of the output, see Formattable
      precision - the precision of the output, see Formattable
      padChar - the pad character to use
      Returns:
      The formatter instance, not null
    • append

      public static Formatter append(CharSequence seq, Formatter formatter, int flags, int width, int precision, char padChar, CharSequence truncateEllipsis)
      Handles the common Formattable operations of truncate-pad-append.
      Parameters:
      seq - the string to handle, not null
      formatter - the destination formatter, not null
      flags - the flags for formatting, see Formattable
      width - the width of the output, see Formattable
      precision - the precision of the output, see Formattable
      padChar - the pad character to use
      truncateEllipsis - the ellipsis to use when precision dictates truncation, null or empty causes a hard truncation
      Returns:
      The formatter instance, not null
      Throws:
      IllegalArgumentException - if ellipsis.length() > precision, given that ellipsis is not null and precision >= 0
    • append

      public static Formatter append(CharSequence seq, Formatter formatter, int flags, int width, int precision, CharSequence ellipsis)
      Handles the common Formattable operations of truncate-pad-append, padding width underflow with spaces.
      Parameters:
      seq - the string to handle, not null
      formatter - the destination formatter, not null
      flags - the flags for formatting, see Formattable
      width - the width of the output, see Formattable
      precision - the precision of the output, see Formattable
      ellipsis - the ellipsis to use when precision dictates truncation, null or empty causes a hard truncation
      Returns:
      The formatter instance, not null
      Throws:
      IllegalArgumentException - if ellipsis.length() > precision, given that ellipsis is not null and precision >= 0
    • toString

      public static String toString(Formattable formattable)
      Gets the default formatted representation of the specified Formattable.
      Parameters:
      formattable - the instance to convert to a string, not null
      Returns:
      The resulting string, not null