Difference between revisions of "TextUtils"

From GreenVulcano Wiki
Jump to: navigation, search
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Class FQN: '''it.greenvulcano.util.txt'''
+
Class FQN: '''it.greenvulcano.util.txt.TextUtils'''
  
==Following the TextUtils public static methods==
+
==TextUtils public static methods==
* Parsing
+
<syntaxhighlight lang="java5">
<syntaxhighlight lang="java5">  
+
/**
    /**
+
* Compiles pattern as a regular expression then checks if exists a match in text.
    * Simply calls
+
*
    * {@link java.util.regex.Pattern#matches(String, CharSequence)}.
+
* @param pattern
    *  
+
* @param text
    * @param pattern
+
* @return true if the pattern match the text
    * @param text
+
*/
    * @return
+
public static boolean matches(String pattern, String text)
    */
 
    public static boolean matches(String pattern, String text)
 
  
    /**
+
/**
    * Replaces within input string all the occurrences of the
+
* Replaces within input string all the occurrences of the
    * substring toBeReplaced with occurrences of the substring replacement.
+
* substring toBeReplaced with occurrences of the substring replacement.
    *  
+
*
    * @param input
+
* @param input
    *        the input String.
+
*        the input String.
    * @param toBeReplaced
+
* @param toBeReplaced
    *        the substring to be replaced within input string.
+
*        the substring to be replaced within input string.
    * @param replacement
+
* @param replacement
    *        the string used to replace substring toBeReplaced within input string.
+
*        the string used to replace substring toBeReplaced within input string.
    * @return the input string, with all occurrences of the substring
+
* @return the input string, with all occurrences of the substring
    *        toBeReplaced replaced by occurrences of the substring replacement.
+
*        toBeReplaced replaced by occurrences of the substring replacement.
    */
+
*/
    public static String replaceSubstring(String input, String toBeReplaced, String replacement);
+
public static String replaceSubstring(String input, String toBeReplaced, String replacement);
 
 
    /**
 
    * @param input
 
    * @param phPrefix
 
    * @param phSuffix
 
    * @param phValues
 
    * @return the string with placeholders replaced
 
    *
 
    */
 
    public static String replacePlaceholder(String input, String phPrefix, String phSuffix,Hashtable<String, String> phValues)
 
    /**
 
    * This method tokenizes a given string using another given string as
 
    * separator and returns a List containing found tokens. The
 
    * returned List is NEVER null (it may have zero elements, anyway).
 
    *
 
    * @param theString the String to be tokenized.
 
    * @param separatorString the String separator between tokens.
 
    * @return a List containing found tokens.
 
    */
 
    public static List<String> splitByStringSeparator(String theString, String separatorString)
 
    /**
 
    * Replaces JS invalid chars within input String with the
 
    * corresponding entities.
 
    *
 
    * @param input the input String.
 
    * @return the input string, with XML invalid chars replaced by the
 
    *        corresponding entities.
 
    */
 
    public static String replaceJSInvalidChars(String input)
 
  
    /**
+
/**
    * Generate random chars string of given <code>length</code>.
+
* Replaces placeholders value in the input string.
    *  
+
*
    * @param length
+
* @param input
    * @return a random string of given length.
+
*        the input text
    */
+
* @param phPrefix
    public static String generateRandomString(int length)
+
*        the placeholder prefix
 +
* @param phSuffix
 +
*        the placeholder suffix
 +
* @param phValues
 +
*        the placeholder values
 +
* @return the string with placeholders replaced
 +
*
 +
*/
 +
public static String replacePlaceholder(String input, String phPrefix, String phSuffix, Hashtable<String, String> phValues)
 +
 
 +
/**
 +
* This method tokenizes a given string using another given string as
 +
* separator and returns a List containing found tokens. The
 +
* returned List is NEVER null (it may have zero elements, anyway).
 +
*
 +
* @param theString
 +
*        the string to be tokenized.
 +
* @param separatorString
 +
*        the string separator between tokens.
 +
* @return a List containing found tokens.
 +
*/
 +
public static List<String> splitByStringSeparator(String theString, String separatorString)
 +
 
 +
/**
 +
* Replaces JavaScript invalid chars within input String with the
 +
* corresponding escapes.
 +
*
 +
* @param input the input String.
 +
* @return the input string, with JS invalid chars replaced by the
 +
*        corresponding escapes.
 +
*/
 +
public static String replaceJSInvalidChars(String input)
 +
 
 +
/**
 +
* Replaces SQL invalid chars within input String with the
 +
* corresponding escapes.
 +
*
 +
* @param input
 +
*        the input String.
 +
* @return the input string, with SQL invalid chars replaced by the
 +
*        corresponding escapes.
 +
*/
 +
public static String replaceSQLInvalidChars(String input)
 +
 
 +
/**
 +
* Dumps the content of a byte array as chars
 +
*
 +
* @param arr
 +
*        a byte array
 +
* @return A representation of the given byte array as a sequence of chars
 +
*/
 +
public static String dumpByteArrayAsChars(byte[] arr)
 +
 
 +
/**
 +
* Generates random chars string of given length.
 +
*
 +
* @param length
 +
* @return a random string of given length.
 +
*/
 +
public static String generateRandomString(int length)
 +
 
 +
/**
 +
* Returns a String representation of the given throwable stack-trace.
 +
*
 +
* @param throwable
 +
* @return the stack-trace
 +
*/
 +
public static String getStackTrace(Throwable throwable)
 +
 
 +
/**
 +
* Converts the following definitions to the corresponding EOL char/s:
 +
* - \n or LF : line feed
 +
* - \r or CR : carriage return
 +
* - \r\n or CR-LF : carriage return and line feed
 +
* - native : OS native EOL
 +
*
 +
* @param def
 +
*        the definition to convert
 +
* @return the EOL char/s or null
 +
*/
 +
public static String getEOL(String def)
 +
 
 +
/**
 +
* Opens and loads the content of a text file into a String
 +
*
 +
* @param filename
 +
*        the name of the file
 +
* @return The content of the text file as a String
 +
* @throws FileNotFoundException
 +
* @throws IOException
 +
*/
 +
public static String readFile(String filename) throws FileNotFoundException, IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file into a String
 +
*
 +
* @param file
 +
* @return The content of the text file as a String
 +
* @throws FileNotFoundException
 +
* @throws IOException
 +
*/
 +
public static String readFile(File file) throws FileNotFoundException, IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file (read from classpath) into a
 +
* String
 +
*
 +
* @param filename
 +
*        the name of the file
 +
* @return The content of the text file as a String
 +
* @throws FileNotFoundException
 +
* @throws IOException
 +
*/
 +
public static String readFileFromCP(String filename) throws FileNotFoundException, IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file (read from URL) into a
 +
* String
 +
*
 +
* @param url
 +
*        the url of the file
 +
* @return The content of the text file as a String
 +
* @throws IOException
 +
*/
 +
public static String readFileFromURL(URL url) throws IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file into a list of String
 +
*
 +
* @param filename
 +
*        the name of the file
 +
* @return The content of the text file as a list of String
 +
* @throws FileNotFoundException
 +
* @throws IOException
 +
*/
 +
public static List<String> readFileAsLines(String filename) throws FileNotFoundException, IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file (read from classpath) into a
 +
* list of String
 +
*
 +
* @param filename
 +
*        the name of the file
 +
* @return The content of the text file as a list of String
 +
* @throws FileNotFoundException
 +
* @throws IOException
 +
*/
 +
public static List<String> readFileAsLinesFromCP(String filename) throws FileNotFoundException, IOException
 +
 
 +
/**
 +
* Opens and loads the content of a text file (read from URL) into a
 +
* list of String
 +
*
 +
* @param url
 +
*        the url of the file
 +
* @return The content of the text file as a list of String
 +
* @throws IOException
 +
*/
 +
public static List<String> readFileAsLinesFromURL(URL url) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentString
 +
*        The String to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(String contentString, String filename) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentString
 +
*        The String to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(String contentString, String filename, boolean append) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentString
 +
*        The StringBuffer to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(StringBuffer contentString, String filename) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentString
 +
*        The StringBuffer to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(StringBuffer contentString, String filename, boolean append) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentStrings
 +
*        The list of strings to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @param endline
 +
*        The line terminator, if null or empty is used '\n'
 +
* @throws IOException
 +
*/
 +
public static void writeFile(List<String> contentStrings, String filename, String endline) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentStrings
 +
*        The list of strings to be written into the file
 +
* @param filename
 +
*        The name of the file
 +
* @param endline
 +
*        The line terminator, if null or empty is used '\n'
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(List<String> contentStrings, String filename, String endline, boolean append) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentString
 +
*        The String to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(String contentString, File file) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentString
 +
*        The String to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(String contentString, File file, boolean append) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentString
 +
*        The StringBuffer to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(StringBuffer contentString, File file) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentString
 +
*        The StringBuffer to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(StringBuffer contentString, File file, boolean append) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a new file
 +
*
 +
* @param contentStrings
 +
*        The StringBuffer to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @param endline
 +
*        The line terminator, if null or empty is used '\n'
 +
* @throws IOException
 +
*/
 +
public static void writeFile(List<String> contentStrings, File file, String endline) throws IOException
 +
 
 +
/**
 +
* Writes a text String into a file
 +
*
 +
* @param contentStrings
 +
*        The StringBuffer to be written into the file
 +
* @param file
 +
*        The destination file
 +
* @param endline
 +
*        The line terminator, if null or empty is used '\n'
 +
* @param append
 +
*        If true the data are appended to existent file
 +
* @throws IOException
 +
*/
 +
public static void writeFile(List<String> contentStrings, File file, String endline, boolean append) throws IOException
 +
</syntaxhighlight>
 +
 
 +
 
 +
Follows some usage examples:
 +
<syntaxhighlight lang="java5">
 +
/* We assume that #map contains the following mappings:
 +
* prop1 -> value1
 +
* prop2 -> value2
 +
*/
 +
#input = "text text prop{{prop1}} text text prop{{prop2}}",
 +
#value = @it.greenvulcano.util.txt.TextUtils@replacePlaceholder(#input, "prop{{", "}}", #map)
 +
 
 +
// #value contains: "text text value1 text text value2"
 
</syntaxhighlight>
 
</syntaxhighlight>

Latest revision as of 17:51, 21 December 2012

Class FQN: it.greenvulcano.util.txt.TextUtils

TextUtils public static methods

/**
* Compiles pattern as a regular expression then checks if exists a match in text.
*
* @param pattern
* @param text
* @return true if the pattern match the text
*/
public static boolean matches(String pattern, String text)

/**
* Replaces within input string all the occurrences of the
* substring toBeReplaced with occurrences of the substring replacement.
*
* @param input
*        the input String.
* @param toBeReplaced
*        the substring to be replaced within input string.
* @param replacement
*        the string used to replace substring toBeReplaced within input string.
* @return the input string, with all occurrences of the substring
*         toBeReplaced replaced by occurrences of the substring replacement.
*/
public static String replaceSubstring(String input, String toBeReplaced, String replacement);

/**
* Replaces placeholders value in the input string.
*
* @param input
*        the input text
* @param phPrefix
*        the placeholder prefix
* @param phSuffix
*        the placeholder suffix
* @param phValues
*        the placeholder values
* @return the string with placeholders replaced
*
*/
public static String replacePlaceholder(String input, String phPrefix, String phSuffix, Hashtable<String, String> phValues)

/**
* This method tokenizes a given string using another given string as
* separator and returns a List containing found tokens. The
* returned List is NEVER null (it may have zero elements, anyway).
*
* @param theString
*        the string to be tokenized.
* @param separatorString
*        the string separator between tokens.
* @return a List containing found tokens.
*/
public static List<String> splitByStringSeparator(String theString, String separatorString)

/**
* Replaces JavaScript invalid chars within input String with the
* corresponding escapes.
*
* @param input the input String.
* @return the input string, with JS invalid chars replaced by the
*         corresponding escapes.
*/
public static String replaceJSInvalidChars(String input)

/**
* Replaces SQL invalid chars within input String with the
* corresponding escapes.
*
* @param input
*        the input String.
* @return the input string, with SQL invalid chars replaced by the
*         corresponding escapes.
*/
public static String replaceSQLInvalidChars(String input)

/**
* Dumps the content of a byte array as chars
*
* @param arr
*        a byte array
* @return A representation of the given byte array as a sequence of chars
*/
public static String dumpByteArrayAsChars(byte[] arr)

/**
* Generates random chars string of given length.
*
* @param length
* @return a random string of given length.
*/
public static String generateRandomString(int length)

/**
* Returns a String representation of the given throwable stack-trace.
*
* @param throwable
* @return the stack-trace
*/
public static String getStackTrace(Throwable throwable)

/**
* Converts the following definitions to the corresponding EOL char/s:
* - \n or LF : line feed
* - \r or CR : carriage return
* - \r\n or CR-LF : carriage return and line feed
* - native : OS native EOL
*
* @param def
*        the definition to convert
* @return the EOL char/s or null
*/
public static String getEOL(String def)

/**
* Opens and loads the content of a text file into a String
*
* @param filename
*        the name of the file
* @return The content of the text file as a String
* @throws FileNotFoundException
* @throws IOException
*/
public static String readFile(String filename) throws FileNotFoundException, IOException

/**
* Opens and loads the content of a text file into a String
*
* @param file
* @return The content of the text file as a String
* @throws FileNotFoundException
* @throws IOException
*/
public static String readFile(File file) throws FileNotFoundException, IOException

/**
* Opens and loads the content of a text file (read from classpath) into a
* String
*
* @param filename
*        the name of the file
* @return The content of the text file as a String
* @throws FileNotFoundException
* @throws IOException
*/
public static String readFileFromCP(String filename) throws FileNotFoundException, IOException

/**
* Opens and loads the content of a text file (read from URL) into a
* String
*
* @param url
*        the url of the file
* @return The content of the text file as a String
* @throws IOException
*/
public static String readFileFromURL(URL url) throws IOException

/**
* Opens and loads the content of a text file into a list of String
*
* @param filename
*        the name of the file
* @return The content of the text file as a list of String
* @throws FileNotFoundException
* @throws IOException
*/
public static List<String> readFileAsLines(String filename) throws FileNotFoundException, IOException

/**
* Opens and loads the content of a text file (read from classpath) into a
* list of String
*
* @param filename
*        the name of the file
* @return The content of the text file as a list of String
* @throws FileNotFoundException
* @throws IOException
*/
public static List<String> readFileAsLinesFromCP(String filename) throws FileNotFoundException, IOException

/**
* Opens and loads the content of a text file (read from URL) into a
* list of String
*
* @param url
*        the url of the file
* @return The content of the text file as a list of String
* @throws IOException
*/
public static List<String> readFileAsLinesFromURL(URL url) throws IOException

/**
* Writes a text String into a new file
*
* @param contentString
*        The String to be written into the file
* @param filename
*        The name of the file
* @throws IOException
*/
public static void writeFile(String contentString, String filename) throws IOException

/**
* Writes a text String into a file
*
* @param contentString
*        The String to be written into the file
* @param filename
*        The name of the file
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(String contentString, String filename, boolean append) throws IOException

/**
* Writes a text String into a new file
*
* @param contentString
*        The StringBuffer to be written into the file
* @param filename
*        The name of the file
* @throws IOException
*/
public static void writeFile(StringBuffer contentString, String filename) throws IOException

/**
* Writes a text String into a file
*
* @param contentString
*        The StringBuffer to be written into the file
* @param filename
*        The name of the file
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(StringBuffer contentString, String filename, boolean append) throws IOException

/**
* Writes a text String into a new file
*
* @param contentStrings
*        The list of strings to be written into the file
* @param filename
*        The name of the file
* @param endline
*        The line terminator, if null or empty is used '\n'
* @throws IOException
*/
public static void writeFile(List<String> contentStrings, String filename, String endline) throws IOException

/**
* Writes a text String into a file
*
* @param contentStrings
*        The list of strings to be written into the file
* @param filename
*        The name of the file
* @param endline
*        The line terminator, if null or empty is used '\n'
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(List<String> contentStrings, String filename, String endline, boolean append) throws IOException

/**
* Writes a text String into a new file
*
* @param contentString
*        The String to be written into the file
* @param file
*        The destination file
* @throws IOException
*/
public static void writeFile(String contentString, File file) throws IOException

/**
* Writes a text String into a file
*
* @param contentString
*        The String to be written into the file
* @param file
*        The destination file
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(String contentString, File file, boolean append) throws IOException

/**
* Writes a text String into a new file
*
* @param contentString
*        The StringBuffer to be written into the file
* @param file
*        The destination file
* @throws IOException
*/
public static void writeFile(StringBuffer contentString, File file) throws IOException

/**
* Writes a text String into a file
*
* @param contentString
*        The StringBuffer to be written into the file
* @param file
*        The destination file
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(StringBuffer contentString, File file, boolean append) throws IOException

/**
* Writes a text String into a new file
*
* @param contentStrings
*        The StringBuffer to be written into the file
* @param file
*        The destination file
* @param endline
*        The line terminator, if null or empty is used '\n'
* @throws IOException
*/
public static void writeFile(List<String> contentStrings, File file, String endline) throws IOException

/**
* Writes a text String into a file
*
* @param contentStrings
*        The StringBuffer to be written into the file
* @param file
*        The destination file
* @param endline
*        The line terminator, if null or empty is used '\n'
* @param append
*        If true the data are appended to existent file
* @throws IOException
*/
public static void writeFile(List<String> contentStrings, File file, String endline, boolean append) throws IOException


Follows some usage examples:

/* We assume that #map contains the following mappings:
 * prop1 -> value1
 * prop2 -> value2
 */
#input = "text text prop{{prop1}} text text prop{{prop2}}",
#value = @it.greenvulcano.util.txt.TextUtils@replacePlaceholder(#input, "prop{{", "}}", #map)

// #value contains: "text text value1 text text value2"