/**
* 繁体和简体的转换
*
*/
public class TrandtionalToSimplified {
private static String encoding = "utf-8";
private static String tra;
private static String sim;
/**
* 初始化繁体和简体字库
*/
public static void initChars() {
String trapath = TrandtionalToSimplified.class.getResource(
"tranditional.txt").getPath();
File trafile = new File(trapath);
String simpath = TrandtionalToSimplified.class.getResource(
"simplified.txt").getPath();
File simfile = new File(simpath);
try {
tra = FileUtils.readFileToString(trafile, encoding);
sim = FileUtils.readFileToString(simfile, encoding);
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 简体转繁体
*
* @param simplified
* @return
*/
public static String simTotra(String simplified) {
if (sim == null) {
initChars();
}
String traditional = "";
for (int i = 0; i < simplified.length(); i++) {
if (sim.indexOf(simplified.charAt(i)) != -1) {
traditional += tra.charAt(sim.indexOf(simplified.charAt(i)));
} else {
traditional += traditional.charAt(i);
}
}
return traditional;
}
/**
* 繁体转简体
*
* @param traditional
* @return
*/
public static String traTosim(String traditional) {
if (tra == null) {
initChars();
}
String simplified = "";
for (int i = 0; i < traditional.length(); i++) {
if (tra.indexOf(traditional.charAt(i)) != -1) {
simplified += sim.charAt(tra.indexOf(traditional.charAt(i)));
} else {
simplified += traditional.charAt(i);
}
}
return simplified;
}
/**
* 判断是否是繁体
*
* @param str
* @return
*/
public static boolean isTrandtional(String str) {
if (null == str)
return false;
if (str.trim() == " ")
return false;
byte[] bytes = str.getBytes();
if (bytes.length < 2)
return false;
byte aa = (byte) 0xB0;
byte bb = (byte) 0xF7;
byte cc = (byte) 0xA1;
byte dd = (byte) 0xFE;
if (bytes[0] >= aa && bytes[0] <= bb) {
if (bytes[1] < cc || bytes[1] > dd) {
return false;
}
return true;
}
return false;
}
/**
* 判断是否是简体
*
* @param str
* @return
*/
public static boolean isSimplified(String str) {
if (null == str)
return false;
if (str.trim() == " ")
return false;
byte[] bytes = str.getBytes();
if (bytes.length < 2)
return false;
byte aa = (byte) 0xB0;
byte bb = (byte) 0xF7;
byte cc = (byte) 0xA1;
byte dd = (byte) 0xFE;
if (bytes[0] >= aa && bytes[0] <= bb) {
if (bytes[1] < cc || bytes[1] > dd) {
return true;
}
return false;
}
return false;
}
分享到:
相关推荐
模仿语言包式的简繁转换功能插件,轻松实现繁体和简体互换,很方便,只有一个JS文件。Std_StranJF.js文件只支持GB2312码,big52gb.js支持utf-8。 一、将繁简互换JS文件上传至空间: 如果您调用的是...
繁体和简体汉字相互转换器,是一款不可多得得好软件.用起来非常方便,而且转换的速度非常快~~~~~下了不后悔~~不好你打我~~
VB实现汉字简体、繁体互相转换 VB简体 繁体 互相转换 API实现 可以实现一整个字符串一次性转换,字符串中可包含非汉字字符。
主要介绍了php中文繁体和简体相互转换的方法,涉及php中数组简体繁体对照表的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
繁体中文与简体中文之间互相转换
汉字简体繁体相互转换工具SimplifiedTraditional.汉字简体繁体相互转换工具SimplifiedTraditional
汉字简体和繁体相互转化本人看了很多网上有关的源码,基本上都是一样的,不过功能就不是很强大 有感与此,本人特写了一个功能强大点的欢迎大家使用
中文简体繁体转换函数forpb11,支持中文的简体繁体互相转换,win8.1 + pb11.5测试通过
提供繁体中文 简体中文的相互转换 一个js文件 什么都不用改 直接潜入到页面内就可以
一款实用的转换工具,可以在简体与繁体之间互相转换,操作方便,实用。
关键字 : Delphi 繁体 简体 转换 cvcode ... 由于汉字存在繁体和简体的差别, 导致在进行数据处理时需要进行相互转换, 本文即结合自身多次实践,介绍一下Delphi 实现繁体系统下简体字的显示和转换的方法 。
python实现中文字体简体和繁体之间的相互转化
langconv.py和zh_wiki.py,不需要什么安装方法,只需要把这两个文件下载下来,保存到与代码同一目录下即可。Python 繁体中文与简体中文相互转换
繁体-简体编码转换VB源码,也就是在简体中文(GB2312) -繁体中文(Big5)之间相互转换,支持批量打开TXT格式的简体中文或繁体中文纯文本文件进行批量转换操作。请注意,每次转换的原编码要正确,否则转换结果将是乱码。
一个简体中文和繁体中文互换的php函数类,可以实现简体中文汉字和繁体中文字的相互转换
介绍一个简体中文和繁体中文互换的php函数类,可以实现简体中文汉字和繁体中文字的相互转换,供朋友们下载参考,如果朋友们有更好的此类文件可以上传与我们共同学习分享。
实现简体中文和繁体中文的相互转换,附VB6源代码!
在unicode编码表包括的范围内完成汉字繁简之间的相互转化,可扩充编码表以完成更多字的转化