Here you can find the source of escapeHTMLTags(String in)
Parameter | Description |
---|---|
in | the text to be converted. |
public static String escapeHTMLTags(String in)
//package com.java2s; /**//from ww w .ja va2 s.c o m * <p> * Simple utility class for String operations useful across the framework. * <p/> * <p> * Some methods in this class were copied from the Spring Framework so we didn't * have to re-invent the wheel, and in these cases, we have retained all * license, copyright and author information. * * @since 0.9 */ import java.util.*; public class Main { /** * Constant representing the empty string, equal to "" */ public static final String EMPTY_STRING = ""; private static final char[] LT_ENCODE = "<".toCharArray(); private static final char[] GT_ENCODE = ">".toCharArray(); /** * This method takes a string which may contain HTML tags (ie, <b>, * <table>, etc) and converts the '<'' and '>' characters to * their HTML escape sequences. It will also replace LF with <br>. * * @param in the text to be converted. * @return the input string with the characters '<' and '>' replaced * with their HTML escape sequences. */ public static String escapeHTMLTags(String in) { if (in == null) { return null; } char ch; int i = 0; int last = 0; char[] input = in.toCharArray(); int len = input.length; StringBuilder out = new StringBuilder((int) (len * 1.3)); for (; i < len; i++) { ch = input[i]; if (ch > '>') { } else if (ch == '<') { if (i > last) { out.append(input, last, i - last); } last = i + 1; out.append(LT_ENCODE); } else if (ch == '>') { if (i > last) { out.append(input, last, i - last); } last = i + 1; out.append(GT_ENCODE); } else if (ch == '\n') { if (i > last) { out.append(input, last, i - last); } last = i + 1; out.append("<br>"); } } if (last == 0) { return in; } if (i > last) { out.append(input, last, i - last); } return out.toString(); } /** * Returns the specified array as a comma-delimited (',') string. * * @param array the array whose contents will be converted to a string. * @return the array's contents as a comma-delimited (',') string. * @since 1.0 */ public static String toString(Object[] array) { return toDelimitedString(array, ","); } /** * Returns the array's contents as a string, with each element delimited by * the specified {@code delimiter} argument. Useful for {@code toString()} * implementations and log messages. * * @param array the array whose contents will be converted to a string * @param delimiter the delimiter to use between each element * @return a single string, delimited by the specified {@code delimiter}. * @since 1.0 */ public static String toDelimitedString(Object[] array, String delimiter) { if (array == null || array.length == 0) { return EMPTY_STRING; } StringBuilder sb = new StringBuilder(); for (int i = 0; i < array.length; i++) { if (i > 0) { sb.append(delimiter); } sb.append(array[i]); } return sb.toString(); } /** * Returns the collection's contents as a string, with each element * delimited by the specified {@code delimiter} argument. Useful for * {@code toString()} implementations and log messages. * * @param c the collection whose contents will be converted to a string * @param delimiter the delimiter to use between each element * @return a single string, delimited by the specified {@code delimiter}. * @since 1.2 */ public static String toDelimitedString(Collection c, String delimiter) { if (c == null || c.isEmpty()) { return EMPTY_STRING; } return join(c.iterator(), delimiter); } /** * Joins the elements of the provided {@code Iterator} into a single String * containing the provided elements.</p> * <p/> * No delimiter is added before or after the list. A {@code null} separator * is the same as an empty String ("").</p> * <p/> * Copied from Commons Lang, version 3 (r1138702).</p> * * @param iterator the {@code Iterator} of values to join together, may be * null * @param separator the separator character to use, null treated as "" * @return the joined String, {@code null} if null iterator input * @since 1.2 */ public static String join(Iterator<?> iterator, String separator) { final String empty = ""; // handle null, zero and one elements before building a buffer if (iterator == null) { return null; } if (!iterator.hasNext()) { return empty; } Object first = iterator.next(); if (!iterator.hasNext()) { return first == null ? empty : first.toString(); } // two or more elements StringBuilder buf = new StringBuilder(256); // Java default is 16, probably too small if (first != null) { buf.append(first); } while (iterator.hasNext()) { if (separator != null) { buf.append(separator); } Object obj = iterator.next(); if (obj != null) { buf.append(obj); } } return buf.toString(); } }