这个可以,大意如此,哈希表的内容没 办法全贴上,就是建立这样的对应关系!
<%@ page language="java" import="java.util.*" contentType="text/html" %>
<%!
Hashtable ht=new Hashtable(10);
String g(Integer n){
 int num=n.intValue();
 if(num>0&&num<160){
  return String.valueOf((char)num);
 }
 else if(num<-20319||num>-10247){
  return "";
 }
 else{
  if(ht.size()==0){b();}
  while(!ht.containsKey(Integer.toString(num)))num--;
  return ht.get(Integer.toString(num)).toString();
 }
}
String c(String str){
 char[] hz=str.toCharArray();
 int len=str.length();
 int p,q;
 String ret="";
 for(int i=0;i<len;i++){
  p=(int)hz[i];
  if(p>160){
   q=(int)hz[++i];
   p=p*256+q-65536;
  }
  ret+=g(new Integer(p));
 }
 return ret;
}
void b(){
 ht.put("-20319","a");
 ht.put("-20317","ai");
 ht.put("-20304","an");
 ht.put("-20295","ang");
 ht.put("-20292","ao");
 ht.put("-20283","ba");
 ht.put("-20265","bai");
 ht.put("-20257","ban");
 ht.put("-20242","bang");
 ht.put("-20230","bao");
 ht.put("-20051","bei");