文档章节

common-tools(1)之中文相关工具类使用(ZhUtil)

路小磊
 路小磊
发布于 2013/02/24 17:26
字数 723
阅读 599
收藏 5

    发了个自己写的工具包,发现可能是样例代码太少了,导致反响不够强烈啊。那么从现在开始就以博文的形式介绍下我的这个工具包有哪些功能。

    工具包我发布到github上了,开源中国的地址是:http://www.oschina.net/p/common-tools

    首先介绍个比较特殊和简单的工具ZhUtil(com.baijob.commonTools.ZhUtil.java),此工具类的主要功能是汉字的简体和繁体转换和全角半角转换,我想这个在实际工作中应该应用很广吧。Ok,废话不多,上代码:

package com.baijob.commonTools;

import org.junit.Test;

public class ZhUtilTest {
	@Test
	public void zhUtilTest(){
		//全角To半角
		String str1 = ZhUtil.toDBC("处理的符号:,!    不处理的符号『』【】");
		System.out.println(str1);
		
		//半角To全角
		String str2 = ZhUtil.toSBC("处理的符号,.");
		System.out.println(str2);
		
		String s_str1 = "简体中文到繁体中文转换这件事没有捷径,只能硬来。";
		ZhUtil.initS2T();
		String t_str1 = ZhUtil.toTraditional(s_str1);
		System.out.println(t_str1);
		
		String t_str2 = "簡體中文到繁體中文轉換這件事沒有捷徑,只能硬來。";
		ZhUtil.initS2T();
		String s_str2 = ZhUtil.toSimplified(t_str2);
		System.out.println(s_str2);
		
		//调用我是为了释放资源,要是不调那一堆替换的map可就一直自内存里呆着了,我可不管。
		ZhUtil.clean();
	}
}
其实这四个方法的原理比较简单。首先看全角和半角。

    由于在ASCII中半角和全角都有固定的偏移量,所以直接加或者减偏移量就可以了,具体在哪个范围里还有偏移量是多少我是网上找到,这个可以要是有需要大家可以进我的代码里拷贝相应的代码段,没有依赖。

    再看简体和繁体的转换。这个就没有那么好运气是有固定的偏移数了,我网上搜了半天,发现在维基百科有专门的繁简对照表,好吧,那只能硬来了,整理一下这个对照表,把它放进一个配置文件中,读入内存,然后挨个查找替换,这个大家可以进src/main/resource/data下有两个setting文件,分别对应的是简体转繁体和繁体转简体。开头的注释我还特意加上了维基百科的地址哦。

    当然,一定会有人问我为什么简体转繁体和繁体转简体会是完全两个对应表,我会告诉你:我也不知道,维基百科上就是这样,这个语言方面的事情没有深入研究过,如果某个大神知道希望告知我哈。

    应该是工具的思想和方法还是十分简单的,但是总结这些我也是花费了好多时间,我的想法是,不一定要做出多么牛叉的东西,只是希望能节省大家更多的时间。

    最后,祝大家中秋节快乐哈!

© 著作权归作者所有

共有 人打赏支持
路小磊

路小磊

粉丝 358
博文 54
码字总数 41709
作品 5
乌海
程序员
私信 提问
加载中

评论(2)

路小磊
路小磊

引用来自“kiwivip”的评论

这个有啥优势?快?省内存?

算是一种解决方法吧。我已经说明了原理了,要是你有更好的办法可以分享出来。嘿嘿。多谢关注留言~~
kiwivip
kiwivip
这个有啥优势?快?省内存?
Common Gui Tools 1.02,Java GUI实用小工具集

Common Gui Tools 是用java编写,GUI界面的实用小工具集,1.02版有8个小工具: 1,编码转换:Character Converter 2,加密解密:Encrypt And Decrypt 3,正则表达式验证:Regex Tester 4,执...

bs2004
2013/04/10
1K
2
Looly/common-tools

common-tools 此工具我不再更新,里面大多数方法我迁移到了hutool工具包中,而其中一些不常用的功能被遗弃,项目暂留做为以后参考。 一、数据库工具类 1、com.baijob.commonTools.db.ds C3p0...

Looly
2014/08/20
0
0
Common Gui Tools 1.0,Java GUI实用小工具集

Common Gui Tools 是用java编写,GUI界面的实用小工具集,1.0版暂有6个小工具: 1,编码转换:Character Converter 2,加密解密:Encrypt And Decrypt 3,正则表达式验证:Regex Tester 4,执...

bs2004
2013/03/20
1K
18
SOFABoot 3.1.1 发布,支持 Gradle 依赖管理

1、发布 SOFABoot v3.1.1 , 主要变更如下: i. 提供 Gradle 插件,支持 Gradle 依赖管理 ii. 优化日志配置,默认引入 log-sofa-boot-starter iii. 修复 Spring Cloud Context RestartListen...

张奇龙
2018/12/29
0
0
Common Gui Tools 1.1,Java GUI实用小工具集

Common Gui Tools Common Gui Tools 是用java编写,GUI界面的实用小工具集,1.1版有13个小工具: 欢迎您使用并提供改进意见! 下载及使用说明: 下载压缩包common_gui_tools-1.1.zip,解压,...

bs2004
2014/07/03
2.2K
9

没有更多内容

加载失败,请刷新页面

加载更多

mogodb服务

部署MongoDB 官网: https://www.mongodb.com/download-center/community 创建mongo数据目录 mkdir /data/mongodb 二进制部署 wget -c https://fastdl.mongodb.org/linux/mongodb-linux-x8......

以谁为师
昨天
1
0
大神教你Debian GNU/Linux 9.7 “Stretch” Live和安装镜像开放下载

Debian项目团队于昨天发布了Debian GNU/Linux 9 "Stretch" 的第7个维护版本更新,重点修复了APT软件管理器中存在的安全漏洞。在敦促每位用户尽快升级系统的同时,Debian团队还发布了Debian ...

linux-tao
昨天
3
0
PHP 相关配置

1. php-fpm的pool 编辑php-fpm配置文件php-fpm.con vim /usr/local/php/etc/php-fpm.conf //在[global]部分增加以下内容 include = etc/php-fpm.d/*.conf # 相当与Nginx的虚拟主机文件 “vho......

Yue_Chen
昨天
2
0
EOS主网数据同步指南

本文介绍如何安装EOS节点软件并接入EOS主网,主要包括以下内容: 如何安装EOS节点软件 如何配置EOS节点软件接入主网 如何启动EOS节点软件与主网数据同步 如何检查主网数据同步进度 如何正确地...

汇智网教程
昨天
3
0
matlab-线性代数 齐次方程组 基础解系和通解

  matlab : R2018a 64bit     OS : Windows 10 x64 typesetting : Markdown    blog : my.oschina.net/zhichengjiu    gitee : gitee.com/zhichengjiu   code clearclc% x1+2*......

志成就
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部