public String escapeStringForJavaCode( String value ) { if ( value == null ) { return value; } //we need to escape characters like this '\r\t', \n, and " to generate the code properly. return StringEscapeUtils.escapeJavaNonUTFChars(value); }
/** * Comes from org.apache.commons.lang.StringEscapeUtils */ public static String escapeJavaNonUTFChars( String str ) { return escapeJavaNonUTFChars( str, false, false ); }
public static String encodeStringValue(Object value, boolean escapeJavaNonUTFChars) { if (value == null) { return null; } else { StringBuilder encodedValue = new StringBuilder(); String escapedValue = escapeJavaNonUTFChars ? StringEscapeUtils.escapeJavaNonUTFChars(value.toString()) : value.toString(); encodedValue.append("\""); encodedValue.append(escapedValue); encodedValue.append("\""); return encodedValue.toString(); } }
/** * Comes from org.apache.commons.lang.StringEscapeUtils */ private static String escapeJavaNonUTFChars( String str, boolean escapeSingleQuotes, boolean escapeForwardSlash ) { if ( str == null ) { return null; } try { StringWriter writer = new StringWriter( str.length() * 2 ); escapeJavaNonUTFChars( writer, str, escapeSingleQuotes, escapeForwardSlash ); return writer.toString(); } catch ( IOException ioe ) { // this should never ever happen while writing to a StringWriter throw new RuntimeException( ioe ); } }
script.append(escapeJavaNonUTFChars(param)); script.append("\"");