public static String jQuote()

in freemarker-docgen-core/src/main/java/org/freemarker/docgen/core/TextUtil.java [31:75]


    public static String jQuote(String s) {
        if (s == null) {
            return "null";
        }
        String s2;
        int ln = s.length();
        int next = 0;
        int i = 0;
        StringBuilder b = new StringBuilder(ln + 3);
        b.append("\"");
        while (i < ln) {
            char c = s.charAt(i);
            if (c == '\\' || c == '"' || c < 0x20) {
                b.append(s.substring(next, i));
                switch (c) {
                case '\\':
                    b.append("\\\\"); break;
                case '"':
                    b.append("\\\""); break;
                case '\n':
                    b.append("\\n"); break;
                case '\r':
                    b.append("\\r"); break;
                case '\t':
                    b.append("\\t"); break;
                case '\b':
                    b.append("\\b"); break;
                case '\f':
                    b.append("\\f"); break;
                default:
                    b.append("\\u0000");
                    int x = b.length();
                    s2 = Integer.toHexString(c);                    
                    b.replace(x - s2.length(), x, s2);    
                }
                next = i + 1;
            }
            i++;
        }
        if (next < ln) {
            b.append(s.substring(next));
        }
        b.append("\"");
        return b.toString();
    }