设为首页 加入收藏

TOP

Java中文简体繁体转换
2014-11-04 12:45:09 来源: 作者: 【 】 浏览:38
Tags:Java 中文 简体 繁体 转换

  下面是代码。


  import java.io.BufferedReader;


  import java.io.File;


  import java.io.FileNotFoundException;


  import java.io.FileReader;


  import java.util.HashMap;


  import java.util.Map;


  public class Translation {


  StringBuffer fantiBuffer;


  StringBuffer jiantiBuffer;


  File file;


  BufferedReader bufferReader;


  FileReader fileReader;


  String line;


  public HashMap fan2Jian=new


  HashMap();


  public HashMap jian2Fan=new


  HashMap();


  /**


  * @param args


  */


  public Translation(){


  formMap("src\\fan.txt","src\\jian.txt");


  };


  public StringBuffer getDictionary(String path) {


  StringBuffer readAll=new StringBuffer();


  try {


  file=new File(path);


  fileReader=new FileReader(file);


  bufferReader=new BufferedReader(new FileReader(file));


  while((line=bufferReader.readLine())!=null){


  readAll.append(line);


  }


  } catch (Exception e) {


  // TODO Auto-generated catch block


  e.printStackTrace();


  }


  return readAll;


  }


  public void formMap(String pathOfFanti,String pathOfJianti){


  jiantiBuffer=getDictionary(pathOfJianti);


  fantiBuffer=getDictionary(pathOfFanti);


  int k=jiantiBuffer.length();


  Character fan=null;


  Character jian=null;


  for(int i=0;i fan=fantiBuffer.charAt(i);


  jian=jiantiBuffer.charAt(i);


  // fan=fantiBuffer.charAt(i);


  // jian=jiantiBuffer.charAt(i);


  fan2Jian.put(fan, jian);


  jian2Fan.put(jian, fan);


  }


  }


  public void translate(StringBuffer from,String type){


  int i = from.length();


  char come;


  if (type.equals("fan2Jian")) {


  for (int k = 0; k < i; k++) {


  come = from.charAt(k);


  if (fan2Jian.containsKey(come)) {


  from.setCharAt(k, fan2Jian.get(come));


  }


  }


  }


  else{


  for (int k = 0; k < i; k++) {


  come = from.charAt(k);


  if (jian2Fan.containsKey(come)) {


  from.setCharAt(k, jian2Fan.get(come));


  }


  }}


  }


  public static void main(String[] args) {


  Translation tran=new Translation();


  StringBuffer from=new StringBuffer();


  from.append("核心提示:澳大利亚FAXTS新闻3月5日刊登评论认为,美国在全球一系列被解释成用来防御来自伊朗和朝鲜导弹袭击的弹道导弹防御系统的部署行为,以及最近将先进具有反导能力爱国者导弹出售给台湾的动作,其根本目的是针对两个主要的核大国--中国和俄罗斯。");


  tran.translate(from, "jian2Fan");


  System.out.println(from.toString());


  from.delete(0, from.length());


  from.append("核心提示:澳大利亚FAXTS新闻3月5日刊登评论认为,美国在全球一系列被解释成用来防御来自伊朗和朝鲜导弹袭击的弹道导弹防御系统的部署行为,以及最近将先进具有反导能力爱国者导弹出售给台湾的动作,其根本目的是针对两个主要的核大国--中国和俄罗斯。");


  tran.translate(from, "fan2Jian");


  System.out.println(from);


  }


  }


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇java和ant在windows下的环境变量.. 下一篇JSP中的request对象

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: