groovy.json
Class StringEscapeUtils

java.lang.Object
  extended by groovy.json.StringEscapeUtils

public class StringEscapeUtils
extends Object

Escapes and unescapes Strings for Java, Java Script, HTML, XML, and SQL.

#ThreadSafe#

Note that this version is a stripped down version from Commons Lang 2.6 with only necessary methods for JSON builder

Since:
2.0
Version:
$Id: StringEscapeUtils.java 1057072 2011-01-10 01:55:57Z niallp $
Author:
Apache Software Foundation, Apache Jakarta Turbine, Purple Technology, Alexander Day Chaffee, Antony Riley, Helge Tesgaard, Sean Brown, Gary Gregory, Phil Steitz, Pete Gieser

Constructor Summary
StringEscapeUtils()
          StringEscapeUtils instances should NOT be constructed in standard programming.
 
Method Summary
static String escapeJava(String str)
          Escapes the characters in a String using Java String rules.
static void escapeJava(Writer out, String str)
          Escapes the characters in a String using Java String rules to a Writer.
static String escapeJavaScript(String str)
          Escapes the characters in a String using JavaScript String rules.
static void escapeJavaScript(Writer out, String str)
          Escapes the characters in a String using JavaScript String rules to a Writer.
static String unescapeJava(String str)
          Unescapes any Java literals found in the String.
static void unescapeJava(Writer out, String str)
          Unescapes any Java literals found in the String to a Writer.
static String unescapeJavaScript(String str)
          Unescapes any JavaScript literals found in the String.
static void unescapeJavaScript(Writer out, String str)
          Unescapes any JavaScript literals found in the String to a Writer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StringEscapeUtils

public StringEscapeUtils()

StringEscapeUtils instances should NOT be constructed in standard programming.

Instead, the class should be used as:

StringEscapeUtils.escapeJava("foo");

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

Method Detail

escapeJava

public static String escapeJava(String str)

Escapes the characters in a String using Java String rules.

Deals correctly with quotes and control-chars (tab, backslash, cr, ff, etc.)

So a tab becomes the characters '\\' and 't'.

The only difference between Java strings and JavaScript strings is that in JavaScript, a single quote must be escaped.

Example:

 input string: He didn't say, "Stop!"
 output string: He didn't say, \"Stop!\"
 

Parameters:
str - String to escape values in, may be null
Returns:
String with escaped values, null if null string input

escapeJava

public static void escapeJava(Writer out,
                              String str)
                       throws IOException

Escapes the characters in a String using Java String rules to a Writer.

A null string input has no effect.

Parameters:
out - Writer to write escaped string into
str - String to escape values in, may be null
Throws:
IllegalArgumentException - if the Writer is null
IOException - if error occurs on underlying Writer
See Also:
escapeJava(java.lang.String)

escapeJavaScript

public static String escapeJavaScript(String str)

Escapes the characters in a String using JavaScript String rules.

Escapes any values it finds into their JavaScript String form. Deals correctly with quotes and control-chars (tab, backslash, cr, ff, etc.)

So a tab becomes the characters '\\' and 't'.

The only difference between Java strings and JavaScript strings is that in JavaScript, a single quote must be escaped.

Example:

 input string: He didn't say, "Stop!"
 output string: He didn\'t say, \"Stop!\"
 

Parameters:
str - String to escape values in, may be null
Returns:
String with escaped values, null if null string input

escapeJavaScript

public static void escapeJavaScript(Writer out,
                                    String str)
                             throws IOException

Escapes the characters in a String using JavaScript String rules to a Writer.

A null string input has no effect.

Parameters:
out - Writer to write escaped string into
str - String to escape values in, may be null
Throws:
IllegalArgumentException - if the Writer is null
IOException - if error occurs on underlying Writer
See Also:
escapeJavaScript(java.lang.String)

unescapeJava

public static String unescapeJava(String str)

Unescapes any Java literals found in the String. For example, it will turn a sequence of '\' and 'n' into a newline character, unless the '\' is preceded by another '\'.

Parameters:
str - the String to unescape, may be null
Returns:
a new unescaped String, null if null string input

unescapeJava

public static void unescapeJava(Writer out,
                                String str)
                         throws IOException

Unescapes any Java literals found in the String to a Writer.

For example, it will turn a sequence of '\' and 'n' into a newline character, unless the '\' is preceded by another '\'.

A null string input has no effect.

Parameters:
out - the Writer used to output unescaped characters
str - the String to unescape, may be null
Throws:
IllegalArgumentException - if the Writer is null
IOException - if error occurs on underlying Writer

unescapeJavaScript

public static String unescapeJavaScript(String str)

Unescapes any JavaScript literals found in the String.

For example, it will turn a sequence of '\' and 'n' into a newline character, unless the '\' is preceded by another '\'.

Parameters:
str - the String to unescape, may be null
Returns:
A new unescaped String, null if null string input
See Also:
unescapeJava(String)

unescapeJavaScript

public static void unescapeJavaScript(Writer out,
                                      String str)
                               throws IOException

Unescapes any JavaScript literals found in the String to a Writer.

For example, it will turn a sequence of '\' and 'n' into a newline character, unless the '\' is preceded by another '\'.

A null string input has no effect.

Parameters:
out - the Writer used to output unescaped characters
str - the String to unescape, may be null
Throws:
IllegalArgumentException - if the Writer is null
IOException - if error occurs on underlying Writer
See Also:
unescapeJava(Writer,String)

Copyright © 2003-2012 The Codehaus. All rights reserved.