① 如何用java获取中文拼音的首字母
import java.io.UnsupportedEncodingException;
/**
* 取得给定汉字串的首字母串,即声母串
* Title: ChineseCharToEn
* @date 2004-02-19 注:只支持GB2312字符集中的汉字
*/
public final class ChineseCharToEn {
private final static int[] li_SecPosValue = { 1601, 1637, 1833, 2078, 2274,
2302, 2433, 2594, 2787, 3106, 3212, 3472, 3635, 3722, 3730, 3858,
4027, 4086, 4390, 4558, 4684, 4925, 5249, 5590 };
private final static String[] lc_FirstLetter = { "a", "b", "c", "d", "e",
"f", "g", "h", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s",
"t", "w", "x", "y", "z" };
/**
* 取得给定汉字串的首字母串,即声母串
* @param str 给定汉字串
* @return 声母串
*/
public String getAllFirstLetter(String str) {
if (str == null || str.trim().length() == 0) {
return "";
}
String _str = "";
for (int i = 0; i < str.length(); i++) {
_str = _str + this.getFirstLetter(str.substring(i, i + 1));
}
return _str;
}
/**
* 取得给定汉字的首字母,即声母
* @param chinese 给定的汉字
* @return 给定汉字的声母
*/
public String getFirstLetter(String chinese) {
if (chinese == null || chinese.trim().length() == 0) {
return "";
}
chinese = this.conversionStr(chinese, "GB2312", "ISO8859-1");
if (chinese.length() > 1) // 判断是不是汉字
{
int li_SectorCode = (int) chinese.charAt(0); // 汉字区码
int li_PositionCode = (int) chinese.charAt(1); // 汉字位码
li_SectorCode = li_SectorCode - 160;
li_PositionCode = li_PositionCode - 160;
int li_SecPosCode = li_SectorCode * 100 + li_PositionCode; // 汉字区位码
if (li_SecPosCode > 1600 && li_SecPosCode < 5590) {
for (int i = 0; i < 23; i++) {
if (li_SecPosCode >= li_SecPosValue[i]
&& li_SecPosCode < li_SecPosValue[i + 1]) {
chinese = lc_FirstLetter[i];
break;
}
}
} else // 非汉字字符,如图形符号或ASCII码
{
chinese = this.conversionStr(chinese, "ISO8859-1", "GB2312");
chinese = chinese.substring(0, 1);
}
}
return chinese;
}
/**
* 字符串编码转换
* @param str 要转换编码的字符串
* @param charsetName 原来的编码
* @param toCharsetName 转换后的编码
* @return 经过编码转换后的字符串
*/
private String conversionStr(String str, String charsetName,String toCharsetName) {
try {
str = new String(str.getBytes(charsetName), toCharsetName);
} catch (UnsupportedEncodingException ex) {
System.out.println("字符串编码转换异常:" + ex.getMessage());
}
return str;
}
public static void main(String[] args) {
ChineseCharToEn cte = new ChineseCharToEn();
System.out.println("获取拼音首字母:"+ cte.getAllFirstLetter("北京联席办"));
}
}
② java查询时输入拼音首字母到后台怎么查结果呢模糊查询
你好!
那是因为设计数据库表时多出2列,一列是全拼,一列是简拼,举个例子,就拿搜歌曲,先看表
py_name
py_name_j
zw_name
wusuowei
wsw
无所谓
这样就容易了
如果对你有帮助,望采纳。
③ java的读音到底是怎么读的啊
读音不同,是因为用不同的语言念出来,比如英语读音是.[ˈdʒævə],或者[ˈdʒɑ:və];
有人念 [ˈjɑ:vɑ] 是拉丁语的读音,如果是德国人看见java,他们会发 [ˈdʒɑ:vɑ] 的音;
法国人会发 [ˈʃevɑ]的音,西班牙人看到会发 [ˈhɑ:bɑ] ,意大利人读音和德国人一样,只是j是意大利语的外来字母,意大利人自己会把java写成giava。
java不仅仅是电脑程序,如果j大写成Java,就变成印度尼西亚的地名,叫做爪哇或爪哇岛,印尼原始荷兰的殖民地,荷兰语发音与德语类似,所以无论印尼语、荷兰语的发音都和德语一样,发[ˈdʒɑ:vɑ] 。
就好像blog到了中国叫“博客”一样,我是学英语的,我习惯了[ˈdʒɑ:və]这个发音,如果你也是英语学习者,上面两个英语读音里选择一个就好了。
④ java用中文怎么读
java的读音:jia wa。
以前也有人称为:zhua wa的。但是正规的读法应该是:jia wa(音译:家哇)
Java为印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。
在上世纪Sun公司在申请注册商标时,发现Oak已经被人使用了,再想了一系列名字之后,最终,使用了提议者在喝一杯Java咖啡时无意提到的Java词语,便有了今天的Java编程语言。
网上许多人对Java的读音各执一见,但Java的标准读音应为 “爪哇”。
⑤ java+mysql,关于根据拼音首字母查询
应该需要把汉字对应的拼音先存在数据表,然后查询吧;
查询语句是:select 数据库中存储的中文名字 from 名字表 where 数据库中英文名 like 输入的英文;
⑥ java的拼音字母检索汉字
看看这个js的实现.
http://hi..com/134931/blog/item/311b82589e215add9c8204e5.html
我觉得,先实现汉字转拼音的方法.
数据库里加一个字段存放这些拼音的简写, 每次插入数据的时候,调用这个方法.
这样每个词就有字典了. 最好是用拼音首字母.
⑦ 用java在后台页面实现拼音模糊查找
主要用到的就是SQL语句中的like匹配的问题,如:
"from table where name like %"+iname+"%"
table 是你要查询的表 name是匹配的字段 iname是输入的字母 如果你想查询包含输入字母的就像上面的。 如果 首字母模糊查询就把前面的% 去掉就行
"from table where name like "+iname+"%"
⑧ java、js根据拼音查汉字
1、在数据库增加拼音检索字段这个方法是可行的
2、如果不增加这个字段,那只能在客户端进行,我这里有一个自用的拼音库(2万多汉字,见附件),你自己写个小程序把它整理成汉字与拼音首字母的对照表。
从数据库中读出地名,然后把地名按对照表翻译成拼音简称(注意有多音字,即一个地名可能有多个拼音简称),然后在输入时检索这个对象表即可
⑨ Java的读音
就读“加哇”因为这是从英语那直接读过来的。有浓重的中国口音在里面。就像英文的“偷副” 意思就是豆腐
⑩ java如何实现拼音首字母检索汉字
使用pinyin4j或者jpinyin的,先将汉字转换为拼音,然后记录拼音的首字母,具体的检索过程可以用循环过滤,也可以用前缀树 比如tire树
参考链接:
网页链接java实现汉字转拼音
网页链接tire树