Here you can find the source of htmlEntityToString(String dataStr)
public static String htmlEntityToString(String dataStr)
//package com.java2s; //License from project: Apache License public class Main { public static String htmlEntityToString(String dataStr) { int start = 0; int end = 0; StringBuffer buffer = new StringBuffer(); while (start > -1) { int system = 10; if (start == 0) { int t = dataStr.indexOf("&#"); if (start != t) start = t;//from w w w. j av a 2 s . c o m } end = dataStr.indexOf(";", start + 2); String charStr = ""; if (end != -1) { charStr = dataStr.substring(start + 2, end); char s = charStr.charAt(0); if ((s == 'x') || (s == 'X')) { system = 16; charStr = charStr.substring(1); } } try { char letter = (char) Integer.parseInt(charStr, system); buffer.append(new Character(letter).toString()); } catch (NumberFormatException e) { e.printStackTrace(); } start = dataStr.indexOf("&#", end); if (start - end > 1) { buffer.append(dataStr.substring(end + 1, start)); } if (start == -1) { int length = dataStr.length(); if (end + 1 != length) { buffer.append(dataStr.substring(end + 1, length)); } } } return buffer.toString(); } public static String toString(Object obj, boolean autoQuote) { StringBuilder sb = new StringBuilder(); if (obj == null) { sb.append("NULL"); } else if ((obj instanceof Object[])) { for (int i = 0; i < ((Object[]) obj).length; i++) { sb.append(((Object[]) obj)[i]).append(", "); } if (sb.length() > 0) sb.delete(sb.length() - 2, sb.length()); } else { sb.append(obj.toString()); } if ((autoQuote) && (sb.length() > 0) && ((sb.charAt(0) != '[') || (sb.charAt(sb.length() - 1) != ']')) && ((sb.charAt(0) != '{') || (sb.charAt(sb.length() - 1) != '}'))) { sb.insert(0, "[").append("]"); } return sb.toString(); } }