StringUtils (Apache Ant API)
Date: 2015-06-29

org.apache.tools.ant.util

## Class StringUtils

- java.lang.Object
- - org.apache.tools.ant.util.StringUtils

-     public final class StringUtils
      extends java.lang.Object

  A set of helper methods related to string manipulation.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `LINE_SEP` the line separator for this OS

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `endsWith(java.lang.StringBuffer buffer, java.lang.String suffix)` Checks that a string buffer ends up with a given string.
    `static java.lang.String` | `getStackTrace(java.lang.Throwable t)` Convenient method to retrieve the full stacktrace from a given exception.
    `static java.util.Vector<java.lang.String>` | `lineSplit(java.lang.String data)` Splits up a string into a list of lines.
    `static long` | `parseHumanSizes(java.lang.String humanSize)` Takes a human readable size representation eg 10K a long value.
    `static java.lang.String` | `removePrefix(java.lang.String string, java.lang.String prefix)` Removes the prefix from a given string, if the string contains that prefix.
    `static java.lang.String` | `removeSuffix(java.lang.String string, java.lang.String suffix)` Removes the suffix from a given string, if the string contains that suffix.
    `static java.lang.String` | `replace(java.lang.String data, java.lang.String from, java.lang.String to)` Deprecated. Use `String.replace(CharSequence, CharSequence)` now.
    `static java.lang.String` | `resolveBackSlash(java.lang.String input)` xml does not do "c" like interpretation of strings.
    `static java.util.Vector<java.lang.String>` | `split(java.lang.String data, int ch)` Splits up a string where elements are separated by a specific character and return all elements.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LINE_SEP

          public static final java.lang.String LINE_SEP

      the line separator for this OS

  - ### Method Detail

    - #### lineSplit

          public static java.util.Vector<java.lang.String> lineSplit(java.lang.String data)

      Splits up a string into a list of lines. It is equivalent to `split(data, '\n')`.
      Parameters:
        `data` - the string to split up into lines.
      Returns:
        the list of lines available in the string.

    - #### split

          public static java.util.Vector<java.lang.String> split(java.lang.String data,
                                                 int ch)

      Splits up a string where elements are separated by a specific character and return all elements.
      Parameters:
        `data` - the string to split up.
        `ch` - the separator character.
      Returns:
        the list of elements.

    - #### replace

          public static java.lang.String replace(java.lang.String data,
                                 java.lang.String from,
                                 java.lang.String to)

      Deprecated. Use `String.replace(CharSequence, CharSequence)` now.
      Replace occurrences into a string.
      Parameters:
        `data` - the string to replace occurrences into
        `from` - the occurrence to replace.
        `to` - the occurrence to be used as a replacement.
      Returns:
        the new string with replaced occurrences.

    - #### getStackTrace

          public static java.lang.String getStackTrace(java.lang.Throwable t)

      Convenient method to retrieve the full stacktrace from a given exception.
      Parameters:
        `t` - the exception to get the stacktrace from.
      Returns:
        the stacktrace from the given exception.

    - #### endsWith

          public static boolean endsWith(java.lang.StringBuffer buffer,
                         java.lang.String suffix)

      Checks that a string buffer ends up with a given string. It may sound trivial with the existing JDK API but the various implementation among JDKs can make those methods extremely resource intensive and perform poorly due to massive memory allocation and copying. See
      Parameters:
        `buffer` - the buffer to perform the check on
        `suffix` - the suffix
      Returns:
        `true` if the character sequence represented by the argument is a suffix of the character sequence represented by the StringBuffer object; `false` otherwise. Note that the result will be `true` if the argument is the empty string.

    - #### resolveBackSlash

          public static java.lang.String resolveBackSlash(java.lang.String input)

      xml does not do "c" like interpretation of strings. i.e. \n\r\t etc. this method processes \n, \r, \t, \f, \\ also subs \s -> " \n\r\t\f" a trailing '\' will be ignored
      Parameters:
        `input` - raw string with possible embedded '\'s
      Returns:
        converted string
      Since:
        Ant 1.7

    - #### parseHumanSizes

          public static long parseHumanSizes(java.lang.String humanSize)
                                      throws java.lang.Exception

      Takes a human readable size representation eg 10K a long value. Doesn't support 1.1K or other rational values.
      Parameters:
        `humanSize` - the amount as a human readable string.
      Returns:
        a long value representation
      Throws:
        `java.lang.Exception` - if there is a problem.
      Since:
        Ant 1.7

    - #### removeSuffix

          public static java.lang.String removeSuffix(java.lang.String string,
                                      java.lang.String suffix)

      Removes the suffix from a given string, if the string contains that suffix.
      Parameters:
        `string` - String for check
        `suffix` - Suffix to remove
      Returns:
        the string with the suffix

    - #### removePrefix

          public static java.lang.String removePrefix(java.lang.String string,
                                      java.lang.String prefix)

      Removes the prefix from a given string, if the string contains that prefix.
      Parameters:
        `string` - String for check
        `prefix` - Prefix to remove
      Returns:
        the string with the prefix