發了個本身寫的工具包,發現多是樣例代碼太少了,致使反響不夠強烈啊。那麼從如今開始就以博文的形式介紹下個人這個工具包有哪些功能。 java
工具包我發佈到github上了,開源中國的地址是:http://www.oschina.net/p/common-tools git
首先介紹個比較特殊和簡單的工具ZhUtil(com.baijob.commonTools.ZhUtil.java),此工具類的主要功能是漢字的簡體和繁體轉換和全角半角轉換,我想這個在實際工做中應該應用很廣吧。Ok,廢話很少,上代碼: github
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文件,分別對應的是簡體轉繁體和繁體轉簡體。開頭的註釋我還特地加上了維基百科的地址哦。 .net
固然,必定會有人問我爲何簡體轉繁體和繁體轉簡體會是徹底兩個對應表,我會告訴你:我也不知道,維基百科上就是這樣,這個語言方面的事情沒有深刻研究過,若是某個大神知道但願告知我哈。 code
應該是工具的思想和方法仍是十分簡單的,可是總結這些我也是花費了好多時間,個人想法是,不必定要作出多麼牛叉的東西,只是但願能節省你們更多的時間。 內存
最後,祝你們中秋節快樂哈! 資源