Encode HTML
/* * SSHTools - Java SSH2 API * * Copyright (C) 2002-2003 Lee David Painter and Contributors. * * Contributions made by: * * Brett Smith * Richard Pernavas * Erwin Bolwidt * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */import java.awt.Color; publicclass Util { /** * This method will replace '&' with "&", '"' with """, '<' with "<" and '>' with ">". * * @param html html to encode * @return encoded html */publicstatic String encodeHTML(String html) { // Does java have a method of doing this? StringBuffer buf = new StringBuffer(); char ch; for (int i = 0; i < html.length(); i++) { ch = html.charAt(i); switch (ch) { case'&': // May be already encoded if (((i + 5) < html.length()) && html.substring(i + 1, i + 5).equals("amp;")) { buf.append(ch); } else { buf.append("&"); } break; case'"': buf.append("""); break; case'<': buf.append("<"); break; case'>': buf.append(">"); break; default: buf.append(ch); } } return buf.toString(); } }
Related examples in the same category