/** * Convert HTML character enitities(Unicode) to part of a Java String * hiwa 8 Mar. 2004 * comment rewritten 30 May 2006 */ import java.util.regex.*; public class UTF8CeToJavaString{ //this class name is misleading //it should have been UnicodeCeToJavaString static final String mbs = "&#(\\d+);"; //like "ロ" public static String EncodeCesToChars(String paramStr){ String mbChar; StringBuffer sb = new StringBuffer(); Pattern pat = Pattern.compile(mbs); Matcher mat = pat.matcher(paramStr); while (mat.find()){ mbChar = getMbCharStr(mat.group(1)); //pass the digit part mat.appendReplacement(sb, mbChar); } mat.appendTail(sb); return new String(sb); } /* worker method */ static String getMbCharStr(String digits){ //handle "12525" part which is a char[] cha = new char[1]; //Unicode value stringnized try{ int val = Integer.parseInt(digits); char ch = (char)val; cha[0] = ch; } catch(Exception e){ System.err.println("Error from getMbCharStr:"); e.printStackTrace(System.err); } return new String(cha); //easy!, because Java uses Unicode } }