1.使用的jar包heaven-0.1.129.jar、nlp-common-0.0.3.jar、opencc4j-1.6.0.jar
2.写成工具方法

    /*** 转换字符串中的繁体中文为简体中文*/public static String changeToSimpleChinese(String searchName) {StringBuilder stringBuilder = new StringBuilder();int n = 0;for(int i = 0; i < searchName.length(); i++) {n = (int)searchName.charAt(i);char c = searchName.charAt(i);String s = String.valueOf(c);if(!(19968 <= n && n <40869)) {stringBuilder.append(c);}else {List<String> strings = ZhConverterUtil.toSimple(c);if (strings != null) {int z = 1;//下面用于解决:如果出现简体字转简体居然不是同一个字的时候for (String string : strings) {if (string.equals(s)) {stringBuilder.append(string);} else if (strings.size() == z) {stringBuilder.append(strings.get(0));}z++;}} else {stringBuilder.append(c);}}}return stringBuilder.toString();}/*** 转换字符串中的简体中文为繁体中文*/public static String changeToTraditionalChinese(String searchName) {StringBuilder stringBuilder = new StringBuilder();int n = 0;for(int i = 0; i < searchName.length(); i++) {n = (int)searchName.charAt(i);char c = searchName.charAt(i);String s = String.valueOf(c);if(!(19968 <= n && n <40869)) {stringBuilder.append(c);}else {List<String> strings = ZhConverterUtil.toTraditional(c);if (strings != null) {int z = 1;//下面用于解决:如果出现繁体字转繁体字居然不是同一个字的时候for (String string : strings) {if (string.equals(s)) {stringBuilder.append(string);} else if (strings.size() == z) {stringBuilder.append(strings.get(0));}z++;}} else {stringBuilder.append(c);}}}return stringBuilder.toString();}

3.测试一下

public static void main(String[] args) {String test = "234sejs飞翔的河南人國動达人电脑饮食";String simpleChinese = changeToSimpleChinese(test);System.out.println(simpleChinese);String traditionalChinese = changeToTraditionalChinese(test);System.out.println(traditionalChinese);}234sejs飞翔的河南人国动达人电脑饮食234sejs飛翔的河南人國動達人電腦飲食

4.char值在19968-40869之间的为中文的Unicode编码区域。由于同一个简体中文可能出现多个繁体或者一个繁体中文出现多个简体的情况(列如“周”),所以取的时候只取到了集合的第一个(一般第一个比较通用)。opencc4j中自带了分词器,但是由于可能会出现对字符串分词的不准确导致转换失败,所以采用这种给字符串中的每一个字符进行转换的方式。参考了关于编码的博客https://blog.csdn.net/weixin_44062339/article/details/96964465

java实现字符串中的中文繁简转换相关推荐

  1. 使用.NET进行中文繁简转换的两种方法

    方法一:调用VB.NET的类库. 引用Microsoft.VisualBasic.dll. 中文繁体 = Microsoft.VisualBasic.Strings.StrConv(中文简体,  Mi ...

  2. linux 繁体中文转为简体,中文繁简转换及其转换工具.pdf

    ·计算机教育·· 本栏目贲任编辑:主力 中文繁简转换及其转换工具 冯 霞 (北京师范大学中文信息处理研究所,北京100875) 摘要:简体中文和繁体中文是现代汉语并存的两种书面形式.它们在语音.词汇. ...

  3. PHP中文繁简转换-繁体-简体

    项目中需要搜索简体字或者繁体字 都能够搜到相应的内容,搜索用的又是SPHINX,没法在搜索中修改程序,只能在搜索之前的关键字做出修改了. 于是想到将搜索的关键字不论是简体还是繁体 一律转换成繁体 ,然 ...

  4. java判断字符个数_使用Java判断字符串中的中文字符数量

    Java判断一个字符串str中中文的个数,经过总结,有以下几种方法(全部经过验证),可根据其原理判断在何种情况下使用哪个方法: 1. 1 char[] c =str.toCharArray();2 f ...

  5. Java——去除字符串中的中文

    import java.util.regex.Matcher; import java.util.regex.Pattern;public class RemoveStrChinese {privat ...

  6. java字符串去掉中文_Java——去除字符串中的中文

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class RemoveStrChinese { priv ...

  7. java 中文分词转拼音_pyhanlp 繁简转换之拼音转换与字符正则化

    繁简转换 HanLP几乎实现了所有我们需要的繁简转换方式,并且已经封装到了HanLP中,使得我们可以轻松的使用,而分词器中已经默认支持多种繁简格式或者混合.这里我们不再做过多描述. ·说明 · Han ...

  8. 将字符串中的中文转为拼音(java)

    maven依赖 <dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j</ ...

  9. Java通过正则剔除乱码_正则表达式 - 去掉乱码字符/提取字符串中的中文字符/提取字符串中的大小写字母 - Python代码...

    目录 1.乱码符号种类较少,用replace() 2.乱码字符种类较多,用re.sub() 3.提取字符串中的中文字符 4.提取字符串中的中文字符和数字 5.提取其他 数据清洗的时候一大烦恼就是数据中 ...

最新文章

  1. 人人都是架构师: 约束和原则
  2. 学习android开发中遇到的一些小问题
  3. python使用opencv查找轮廓_Python+opencv学习记录20:轮廓发现,Pythonopencv
  4. java变量用来干嘛_Java
  5. 【数据结构】二叉树的python实现
  6. Jenkins 配置mirrors
  7. 更新Sogou代理服务器程序,支持HTTPS
  8. kindle电子书200G分享
  9. h264视频与pcm音频合成MP4视频格式
  10. JZYZOJ 1382 光棍组织 状压dp
  11. 3年功能测试经验,面试想拿到15k很难吗?
  12. urllib.request.Request的用法
  13. python 图像填充颜色_Opencv:在轮廓图像中填充颜色
  14. 美国top10计算机phd申请案例,申请美国计算机PHD全奖应该怎么做
  15. facebook网页版登录_微信网页版关闭登录将影响一大批使用itchat等Web Api方案的微信机器人...
  16. Log4j2 zero day(CVE-2021-44228) 漏洞浅析
  17. c++实验三:定期存款利息计算器
  18. 2022年认证杯SPSSPRO杯数学建模B题唐宋诗的定量分析与比较研究程序
  19. 函数极限唯一性的证明和求极限的一些想法
  20. 根据起始点经纬度、方向、距离,计算目标点经纬度

热门文章

  1. 诚之和:绿茶等茶凉上市? 单店日均销售额降盈利指标不敌同行
  2. 年轻父母要注意,给孩子取名误区不能犯
  3. 爬虫回响521_现在用scrapy爬一个网站始终遇到521错误,是怎么回事呢?
  4. 南邮linux编程实验报告,小弟在南邮选了一门令我终生后悔的选修课:linux基础教程,考试不会了!-!...
  5. sap服务器迁移性能问题,专家详解SAP数据迁移的六个方法
  6. Android 仿微信裁剪图片
  7. 第一行代码——第十三章:继续进阶——你还应该掌握的高级技巧
  8. python - 文件操作函数练习
  9. Java 数组,看这一篇就够了
  10. Java毕业设计论文写作建议