- 浏览: 55348 次
- 性别:
- 来自: 南京
文章分类
最新评论
public class PinyinBiao{
private String[] name = { "zuo", "zun", "zui", "zuan", "zu", "zou",
"zong", "zi", "zhuo", "zhun", "zhui", "zhuang", "zhuan",
"zhuai", "zhua", "zhu", "zhou", "zhong", "zhi", "zheng",
"zhen", "zhe", "zhao", "zhang", "zhan", "zhai", "zha", "zeng",
"zen", "zei", "ze", "zao", "zang", "zan", "zai", "za", "yun",
"yue", "yuan", "yu", "you", "yong", "yo", "ying", "yin", "yi",
"ye", "yao", "yang", "yan", "ya", "xun", "xue", "xuan", "xu",
"xiu", "xiong", "xing", "xin", "xie", "xiao", "xiang", "xian",
"xia", "xi", "wu", "wo", "weng", "wen", "wei", "wang", "wan",
"wai", "wa", "tuo", "tun", "tui", "tuan", "tu", "tou", "tong",
"ting", "tie", "tiao", "tian", "ti", "teng", "te", "tao",
"tang", "tan", "tai", "ta", "suo", "sun", "sui", "suan", "su",
"sou", "song", "si", "shuo", "shun", "shui", "shuang", "shuan",
"shuai", "shua", "shu", "shou", "shi", "sheng", "shen", "she",
"shao", "shang", "shan", "shai", "sha", "seng", "sen", "se",
"sao", "sang", "san", "sai", "sa", "ruo", "run", "rui", "ruan",
"ru", "rou", "rong", "ri", "reng", "ren", "re", "rao", "rang",
"ran", "qun", "que", "quan", "qu", "qiu", "qiong", "qing",
"qin", "qie", "qiao", "qiang", "qian", "qia", "qi", "pu", "po",
"ping", "pin", "pie", "piao", "pian", "pi", "peng", "pen",
"pei", "pao", "pang", "pan", "pai", "pa", "ou", "o", "nuo",
"nue", "nuan", "nv", "nu", "nong", "niu", "ning", "nin", "nie",
"niao", "niang", "nian", "ni", "neng", "nen", "nei", "ne",
"nao", "nang", "nan", "nai", "na", "mu", "mou", "mo", "miu",
"ming", "min", "mie", "miao", "mian", "mi", "meng", "men",
"mei", "me", "mao", "mang", "man", "mai", "ma", "luo", "lun",
"lue", "luan", "lv", "lu", "lou", "long", "liu", "ling", "lin",
"lie", "liao", "liang", "lian", "lia", "li", "leng", "lei",
"le", "lao", "lang", "lan", "lai", "la", "kuo", "kun", "kui",
"kuang", "kuan", "kuai", "kua", "ku", "kou", "kong", "keng",
"ken", "ke", "kao", "kang", "kan", "kai", "ka", "jun", "jue",
"juan", "ju", "jiu", "jiong", "jing", "jin", "jie", "jiao",
"jiang", "jian", "jia", "ji", "huo", "hun", "hui", "huang",
"huan", "huai", "hua", "hu", "hou", "hong", "heng", "hen",
"hei", "he", "hao", "hang", "han", "hai", "ha", "guo", "gun",
"gui", "guang", "guan", "guai", "gua", "gu", "gou", "gong",
"geng", "gen", "gei", "ge", "gao", "gang", "gan", "gai", "ga",
"fu", "fou", "fo", "feng", "fen", "fei", "fang", "fan", "fa",
"er", "en", "e", "duo", "dun", "dui", "duan", "du", "dou",
"****", "diu", "ding", "die", "diao", "dian", "di", "deng",
"de", "dao", "dang", "dan", "dai", "da", "cuo", "cun", "cui",
"cuan", "cu", "cou", "cong", "ci", "chuo", "chun", "chui",
"chuang", "chuan", "chuai", "chu", "chou", "chong", "chi",
"cheng", "chen", "che", "chao", "chang", "chan", "chai", "cha",
"ceng", "ce", "cao", "cang", "can", "cai", "ca", "bu", "bo",
"bing", "bin", "bie", "biao", "bian", "bi", "beng", "ben",
"bei", "bao", "bang", "ban", "bai", "ba", "ao", "ang", "an",
"ai", "a" };
private int[] code = { -10254, -10256, -10260, -10262, -10270, -10274,
-10281, -10296, -10307, -10309, -10315, -10322, -10328, -10329,
-10331, -10519, -10533, -10544, -10587, -10764, -10780, -10790,
-10800, -10815, -10832, -10838, -11014, -11018, -11019, -11020,
-11024, -11038, -11041, -11045, -11052, -11055, -11067, -11077,
-11097, -11303, -11324, -11339, -11340, -11358, -11536, -11589,
-11604, -11781, -11798, -11831, -11847, -11861, -11867, -12039,
-12058, -12067, -12074, -12089, -12099, -12120, -12300, -12320,
-12346, -12359, -12556, -12585, -12594, -12597, -12607, -12802,
-12812, -12829, -12831, -12838, -12849, -12852, -12858, -12860,
-12871, -12875, -12888, -13060, -13063, -13068, -13076, -13091,
-13095, -13096, -13107, -13120, -13138, -13147, -13318, -13326,
-13329, -13340, -13343, -13356, -13359, -13367, -13383, -13387,
-13391, -13395, -13398, -13400, -13404, -13406, -13601, -13611,
-13658, -13831, -13847, -13859, -13870, -13878, -13894, -13896,
-13905, -13906, -13907, -13910, -13914, -13917, -14083, -14087,
-14090, -14092, -14094, -14097, -14099, -14109, -14112, -14122,
-14123, -14125, -14135, -14137, -14140, -14145, -14149, -14151,
-14159, -14170, -14345, -14353, -14355, -14368, -14379, -14384,
-14399, -14407, -14429, -14594, -14630, -14645, -14654, -14663,
-14668, -14670, -14674, -14678, -14857, -14871, -14873, -14882,
-14889, -14894, -14902, -14908, -14914, -14921, -14922, -14926,
-14928, -14929, -14930, -14933, -14937, -14941, -15109, -15110,
-15117, -15119, -15121, -15128, -15139, -15140, -15141, -15143,
-15144, -15149, -15150, -15153, -15158, -15165, -15180, -15183,
-15362, -15363, -15369, -15375, -15377, -15385, -15394, -15408,
-15416, -15419, -15435, -15436, -15448, -15454, -15625, -15631,
-15640, -15652, -15659, -15661, -15667, -15681, -15701, -15707,
-15878, -15889, -15903, -15915, -15920, -15933, -15944, -15958,
-15959, -16155, -16158, -16169, -16171, -16180, -16187, -16202,
-16205, -16212, -16216, -16220, -16393, -16401, -16403, -16407,
-16412, -16419, -16423, -16427, -16429, -16433, -16448, -16452,
-16459, -16465, -16470, -16474, -16647, -16657, -16664, -16689,
-16706, -16708, -16733, -16915, -16942, -16970, -16983, -17185,
-17202, -17417, -17427, -17433, -17454, -17468, -17482, -17487,
-17496, -17676, -17683, -17692, -17697, -17701, -17703, -17721,
-17730, -17733, -17752, -17759, -17922, -17928, -17931, -17947,
-17950, -17961, -17964, -17970, -17988, -17997, -18012, -18181,
-18183, -18184, -18201, -18211, -18220, -18231, -18237, -18239,
-18446, -18447, -18448, -18463, -18478, -18490, -18501, -18518,
-18526, -18696, -18697, -18710, -18722, -18731, -18735, -18741,
-18756, -18763, -18773, -18774, -18783, -18952, -18961, -18977,
-18996, -19003, -19006, -19018, -19023, -19038, -19212, -19218,
-19224, -19227, -19235, -19238, -19242, -19243, -19249, -19261,
-19263, -19270, -19275, -19281, -19288, -19289, -19467, -19479,
-19484, -19500, -19515, -19525, -19531, -19540, -19715, -19725,
-19728, -19739, -19741, -19746, -19751, -19756, -19763, -19774,
-19775, -19784, -19805, -19976, -19982, -19986, -19990, -20002,
-20026, -20032, -20036, -20051, -20230, -20242, -20257, -20265,
-20283, -20292, -20295, -20304, -20317, -20319 };
public String getPinyin(String gb2312) {
if (null == gb2312 || "".equals(gb2312.trim()))
{
return gb2312;
}
char[] chars = gb2312.toCharArray();
StringBuffer retuBuf = new StringBuffer();
for (int i = 0, Len = chars.length; i < Len; i++)
{
retuBuf.append(getPinyin(chars[i]));
}
return retuBuf.toString();
}
public String getPinyin(char gb2312) {
int ascii = getCnAscii(gb2312);
if (ascii == 0) {
return String.valueOf(gb2312);
}
else
{
String spell = getSpellByAscii(ascii);
if (spell == null)
{
return String.valueOf(gb2312);
}
else
{
return spell;
}
}
}
private int getCnAscii(char cn) {
byte[] bytes = null;
try{
bytes = (String.valueOf(cn)).getBytes("GB2312");
} catch (Exception e) {e.printStackTrace();}
if (bytes == null || bytes.length > 2 || bytes.length <= 0)
{
return 0;
}
if (bytes.length == 1)
{
return bytes[0];
}
else
{
int hightByte = 256 + bytes[0];
int lowByte = 256 + bytes[1];
int ascii = (256 * hightByte + lowByte) - 256 * 256;
return ascii;
}
}
private String getSpellByAscii(int ascii) {
if (ascii > 0 && ascii < 160)
{ // 单字符
return String.valueOf((char) ascii);
}
if (ascii < -20319 || ascii > -10247) { // 不知道的字符
return "?"; }
int ind;
for (ind = 0; ind < code.length; ind++) {
if (ascii >= code[ind])
{
break;
}
}
return name[ind];
}
}
private String[] name = { "zuo", "zun", "zui", "zuan", "zu", "zou",
"zong", "zi", "zhuo", "zhun", "zhui", "zhuang", "zhuan",
"zhuai", "zhua", "zhu", "zhou", "zhong", "zhi", "zheng",
"zhen", "zhe", "zhao", "zhang", "zhan", "zhai", "zha", "zeng",
"zen", "zei", "ze", "zao", "zang", "zan", "zai", "za", "yun",
"yue", "yuan", "yu", "you", "yong", "yo", "ying", "yin", "yi",
"ye", "yao", "yang", "yan", "ya", "xun", "xue", "xuan", "xu",
"xiu", "xiong", "xing", "xin", "xie", "xiao", "xiang", "xian",
"xia", "xi", "wu", "wo", "weng", "wen", "wei", "wang", "wan",
"wai", "wa", "tuo", "tun", "tui", "tuan", "tu", "tou", "tong",
"ting", "tie", "tiao", "tian", "ti", "teng", "te", "tao",
"tang", "tan", "tai", "ta", "suo", "sun", "sui", "suan", "su",
"sou", "song", "si", "shuo", "shun", "shui", "shuang", "shuan",
"shuai", "shua", "shu", "shou", "shi", "sheng", "shen", "she",
"shao", "shang", "shan", "shai", "sha", "seng", "sen", "se",
"sao", "sang", "san", "sai", "sa", "ruo", "run", "rui", "ruan",
"ru", "rou", "rong", "ri", "reng", "ren", "re", "rao", "rang",
"ran", "qun", "que", "quan", "qu", "qiu", "qiong", "qing",
"qin", "qie", "qiao", "qiang", "qian", "qia", "qi", "pu", "po",
"ping", "pin", "pie", "piao", "pian", "pi", "peng", "pen",
"pei", "pao", "pang", "pan", "pai", "pa", "ou", "o", "nuo",
"nue", "nuan", "nv", "nu", "nong", "niu", "ning", "nin", "nie",
"niao", "niang", "nian", "ni", "neng", "nen", "nei", "ne",
"nao", "nang", "nan", "nai", "na", "mu", "mou", "mo", "miu",
"ming", "min", "mie", "miao", "mian", "mi", "meng", "men",
"mei", "me", "mao", "mang", "man", "mai", "ma", "luo", "lun",
"lue", "luan", "lv", "lu", "lou", "long", "liu", "ling", "lin",
"lie", "liao", "liang", "lian", "lia", "li", "leng", "lei",
"le", "lao", "lang", "lan", "lai", "la", "kuo", "kun", "kui",
"kuang", "kuan", "kuai", "kua", "ku", "kou", "kong", "keng",
"ken", "ke", "kao", "kang", "kan", "kai", "ka", "jun", "jue",
"juan", "ju", "jiu", "jiong", "jing", "jin", "jie", "jiao",
"jiang", "jian", "jia", "ji", "huo", "hun", "hui", "huang",
"huan", "huai", "hua", "hu", "hou", "hong", "heng", "hen",
"hei", "he", "hao", "hang", "han", "hai", "ha", "guo", "gun",
"gui", "guang", "guan", "guai", "gua", "gu", "gou", "gong",
"geng", "gen", "gei", "ge", "gao", "gang", "gan", "gai", "ga",
"fu", "fou", "fo", "feng", "fen", "fei", "fang", "fan", "fa",
"er", "en", "e", "duo", "dun", "dui", "duan", "du", "dou",
"****", "diu", "ding", "die", "diao", "dian", "di", "deng",
"de", "dao", "dang", "dan", "dai", "da", "cuo", "cun", "cui",
"cuan", "cu", "cou", "cong", "ci", "chuo", "chun", "chui",
"chuang", "chuan", "chuai", "chu", "chou", "chong", "chi",
"cheng", "chen", "che", "chao", "chang", "chan", "chai", "cha",
"ceng", "ce", "cao", "cang", "can", "cai", "ca", "bu", "bo",
"bing", "bin", "bie", "biao", "bian", "bi", "beng", "ben",
"bei", "bao", "bang", "ban", "bai", "ba", "ao", "ang", "an",
"ai", "a" };
private int[] code = { -10254, -10256, -10260, -10262, -10270, -10274,
-10281, -10296, -10307, -10309, -10315, -10322, -10328, -10329,
-10331, -10519, -10533, -10544, -10587, -10764, -10780, -10790,
-10800, -10815, -10832, -10838, -11014, -11018, -11019, -11020,
-11024, -11038, -11041, -11045, -11052, -11055, -11067, -11077,
-11097, -11303, -11324, -11339, -11340, -11358, -11536, -11589,
-11604, -11781, -11798, -11831, -11847, -11861, -11867, -12039,
-12058, -12067, -12074, -12089, -12099, -12120, -12300, -12320,
-12346, -12359, -12556, -12585, -12594, -12597, -12607, -12802,
-12812, -12829, -12831, -12838, -12849, -12852, -12858, -12860,
-12871, -12875, -12888, -13060, -13063, -13068, -13076, -13091,
-13095, -13096, -13107, -13120, -13138, -13147, -13318, -13326,
-13329, -13340, -13343, -13356, -13359, -13367, -13383, -13387,
-13391, -13395, -13398, -13400, -13404, -13406, -13601, -13611,
-13658, -13831, -13847, -13859, -13870, -13878, -13894, -13896,
-13905, -13906, -13907, -13910, -13914, -13917, -14083, -14087,
-14090, -14092, -14094, -14097, -14099, -14109, -14112, -14122,
-14123, -14125, -14135, -14137, -14140, -14145, -14149, -14151,
-14159, -14170, -14345, -14353, -14355, -14368, -14379, -14384,
-14399, -14407, -14429, -14594, -14630, -14645, -14654, -14663,
-14668, -14670, -14674, -14678, -14857, -14871, -14873, -14882,
-14889, -14894, -14902, -14908, -14914, -14921, -14922, -14926,
-14928, -14929, -14930, -14933, -14937, -14941, -15109, -15110,
-15117, -15119, -15121, -15128, -15139, -15140, -15141, -15143,
-15144, -15149, -15150, -15153, -15158, -15165, -15180, -15183,
-15362, -15363, -15369, -15375, -15377, -15385, -15394, -15408,
-15416, -15419, -15435, -15436, -15448, -15454, -15625, -15631,
-15640, -15652, -15659, -15661, -15667, -15681, -15701, -15707,
-15878, -15889, -15903, -15915, -15920, -15933, -15944, -15958,
-15959, -16155, -16158, -16169, -16171, -16180, -16187, -16202,
-16205, -16212, -16216, -16220, -16393, -16401, -16403, -16407,
-16412, -16419, -16423, -16427, -16429, -16433, -16448, -16452,
-16459, -16465, -16470, -16474, -16647, -16657, -16664, -16689,
-16706, -16708, -16733, -16915, -16942, -16970, -16983, -17185,
-17202, -17417, -17427, -17433, -17454, -17468, -17482, -17487,
-17496, -17676, -17683, -17692, -17697, -17701, -17703, -17721,
-17730, -17733, -17752, -17759, -17922, -17928, -17931, -17947,
-17950, -17961, -17964, -17970, -17988, -17997, -18012, -18181,
-18183, -18184, -18201, -18211, -18220, -18231, -18237, -18239,
-18446, -18447, -18448, -18463, -18478, -18490, -18501, -18518,
-18526, -18696, -18697, -18710, -18722, -18731, -18735, -18741,
-18756, -18763, -18773, -18774, -18783, -18952, -18961, -18977,
-18996, -19003, -19006, -19018, -19023, -19038, -19212, -19218,
-19224, -19227, -19235, -19238, -19242, -19243, -19249, -19261,
-19263, -19270, -19275, -19281, -19288, -19289, -19467, -19479,
-19484, -19500, -19515, -19525, -19531, -19540, -19715, -19725,
-19728, -19739, -19741, -19746, -19751, -19756, -19763, -19774,
-19775, -19784, -19805, -19976, -19982, -19986, -19990, -20002,
-20026, -20032, -20036, -20051, -20230, -20242, -20257, -20265,
-20283, -20292, -20295, -20304, -20317, -20319 };
public String getPinyin(String gb2312) {
if (null == gb2312 || "".equals(gb2312.trim()))
{
return gb2312;
}
char[] chars = gb2312.toCharArray();
StringBuffer retuBuf = new StringBuffer();
for (int i = 0, Len = chars.length; i < Len; i++)
{
retuBuf.append(getPinyin(chars[i]));
}
return retuBuf.toString();
}
public String getPinyin(char gb2312) {
int ascii = getCnAscii(gb2312);
if (ascii == 0) {
return String.valueOf(gb2312);
}
else
{
String spell = getSpellByAscii(ascii);
if (spell == null)
{
return String.valueOf(gb2312);
}
else
{
return spell;
}
}
}
private int getCnAscii(char cn) {
byte[] bytes = null;
try{
bytes = (String.valueOf(cn)).getBytes("GB2312");
} catch (Exception e) {e.printStackTrace();}
if (bytes == null || bytes.length > 2 || bytes.length <= 0)
{
return 0;
}
if (bytes.length == 1)
{
return bytes[0];
}
else
{
int hightByte = 256 + bytes[0];
int lowByte = 256 + bytes[1];
int ascii = (256 * hightByte + lowByte) - 256 * 256;
return ascii;
}
}
private String getSpellByAscii(int ascii) {
if (ascii > 0 && ascii < 160)
{ // 单字符
return String.valueOf((char) ascii);
}
if (ascii < -20319 || ascii > -10247) { // 不知道的字符
return "?"; }
int ind;
for (ind = 0; ind < code.length; ind++) {
if (ascii >= code[ind])
{
break;
}
}
return name[ind];
}
}
发表评论
-
testjson
2023-08-23 16:42 0{ "gen": "ht ... -
小知识点
2017-07-29 23:04 408android日志输出到电脑命令 adb logcat - ... -
Android ListView 图片加载错位
2015-01-12 17:33 1511最近遇到了使用ListView异步加载图片错位的问题,看了好多 ... -
好网址
2014-05-20 19:37 720http://blog.csdn.net/infsafe/ar ... -
ant 一键打包
2013-10-09 19:29 9361.查看当前Android各版本命令:android list ... -
Android WebView
2012-08-24 15:35 2931详细内容可以查看我的网站:[url]http://1.play ... -
android 多点触摸 缩放图片
2012-08-08 22:28 3196从android2.2开始引入了一个ScaleGestureD ... -
android 性能 打包
2012-08-03 22:21 708使用android自带的工具zipalign可以使打完包的程序 ... -
android 软键盘 遮盖 输入框
2012-07-26 17:14 2289新浪微博默认的授权界面做的不是很完美,比如说当我输入密码时弹出 ... -
json gson goolge
2012-04-28 13:33 866请看附件,英文.全面 -
android 小知识点
2012-04-26 21:34 9311.让组件获得焦点:<requestFouse/> ... -
android 线程
2012-04-26 11:13 786自己的一些收获 1.android中一个应用程序开辟的线程不能 ... -
android 弹性效果
2012-04-23 15:58 5266重写自己的view,覆盖父类的overScrollBy方法。 ...
相关推荐
一种非常简单的方式解决Sqlite中文排序问题(网页)
sqlite汉字拼音对照表,有 常用汉字表6986个 和 gbk汉字库21000个 两张表,带汉字的gbk编码
SQLite数据库,SQLite数据库,SQLite数据库,SQLite数据库,SQLite数据库
易语言模块Sqlite表管理.rar 易语言模块Sqlite表管理.rar 易语言模块Sqlite表管理.rar 易语言模块Sqlite表管理.rar 易语言模块Sqlite表管理.rar 易语言模块Sqlite表管理.rar
《SQLite 中文教程》有助于初学者了解 SQLite 数据库引擎相关的基础知识和先进理念。主要介绍了本教程提供了所有重要的内置的 SQLite 函数的参考手册,同时也列出了SQLite 数据库网站和书籍。 本教程帮助您了解什么...
数据库sqlite 小型数据库数据库sqlite
sqlite3 for delphi 自己修改的版本 解决中文乱码问题
换点积分好下载点儿东西,谢谢大家!是从mdb 转过来的。东西不错,比较全。大家一起用用吧!
sqlitefix.exe sqlite3DBFile 界面使用,可以拖放损坏的文件到选择框中 命令行使用为同文件名修复 界面使用会生成.New 的数据库文件 修复完毕的数据库文件可能会比原数据库文件小,因为重建时收缩所知! 因为...
sqlite_column —— 在当前的行中取得一列(a column from the current row of a result set)。 sqlite_create_aggregate —— Register an aggregating UDF for use in SQL statements。 sqlite_create_function ...
sqlite(中文API) sqlite(中文API) sqlite(中文API) sqlite(中文API) sqlite(中文API)
在Java下连接SQLite数据库 一、下载SQLite数据库的JDBC:http://www.zentus.com/sqlitejdbc/ 二、将下载到的包解压后得到jar包放到%JAVA_HOME%\lib下,并且将其添加到ClassPath系统环境变量中。一定要保证在类路径...
基于Qt和SQlite数据库实现的简易记录小程序
调用sqlite开源数据的小程序,能够往数据库中写入数据 希望对初用sqlite者有帮助
一些小型的应用程序需要使用到数据库,sqlite可以说是最好的选择。这里个人整理了一般简单通用的操作类SQLiteHelper
SQLite.Interop.dll for sqlite expert ...2.重新打开SQLite Expert,Tools --> Options --> Data --> SQLite Library中选择“SQLite.Interop.dll *****”那一项,点击 OK; 3.不好使,就重启下sqlite expert
网上很难下载到,分享给需要的:sqlite3odbc.dll 属性 文件版本 1.34455.0,0 产品名称 ODBC Driver for SQLite3 3.43.2 产品版本 0.99991 版权 Copyriglt @2004-2023 ,de> 大小 942 KB 修改日期 2023-10-23 21:50 ...
一款基于SQLite的小项目,代码写的不好,还请大家多指教。
sqlite 小型数据库 dev-c++ 开发库
SQLite 安装包 sqlite3 及sqlite数据库jdbc jar包 2分不能再少了