`
zqc53
  • 浏览: 26261 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

类似qq的汉字拼音首字查询

阅读更多
项目里要用到这个功能,自己边琢磨边找资料,弄出一个demo,大概思路是这样:用Properties的load()来加载一个固定格式的文本文件注1,然后直接当Hashtable用。
package org.navyblue.tests;

import java.util.
*;

/**//**
 *
 * 类似qq的汉字拼音首字查询方法
 * by zqc 2005-08-04
 *
 **
*/

public class pyTest
{
    
public pyTest(){}
    
    
public static void main(String[] args)throws Exception{
        Properties pyMap 
= new Properties();
        
//拼音隐射表
        pyMap.load(new java.io.FileInputStream("pyutf.txt"));
        
//测试字符
        String[] testStr = {"我们","阿哈","嘎嘎","干什么","郑晴川",""};
        
//模拟输入
        String input = "g";
        
        System.
out.println ("输入查询字符:g");
        Vector inis 
= new Vector();
        Vector results 
= new Vector();
        Vector results2 
= new Vector();
        
        
//返回所有测试字符串的首字的打头拼音
        forint i =0 ; i < testStr.length ; i++ ){
            String ini 
=new String( new char[] { testStr[i].charAt(0)} );
            String k 
= (String)pyMap.get(ini);
            results.add(k);
            results2.add(testStr[i]);
        }

        
        
//输出结果
        int l = results.size();
        
for(int i = 0 ; i < l ; i++){
            String c 
= (String)results.get(i);
            
if(c.equals(input)){
                System.
out.println (results2.get(i));
            }

        }

    }

}


----
注1:这个映射文件系网上找来的,大约有14K的汉字量,一般也够用了~用文本工具对原先的格式做了些修改使它符合Properties的格式,然后再用native2ascii转成utf-8编码。



2005年8月8日 0:48:54
分享到:
评论

相关推荐

    VB编程实现返回汉字拼音首字母.7z

    本项目"VB编程实现返回汉字拼音首字母"是一个实用的小程序,其主要功能是将汉字转化为对应的拼音首字母,这对于处理中文数据、搜索优化、或者在不支持汉字输入的环境下具有很高的实用性。 首先,我们要理解这个程序...

    excel提取汉字的拼音首字母集锦

    ### Excel提取汉字拼音首字母的方法 #### 概述 在Excel中处理中文数据时,有时我们需要提取汉字的拼音首字母,这对于数据整理、排序或快速查找等操作非常有用。本文将介绍两种通过VBA(Visual Basic for ...

    EXCEL汉字转拼音首字母

    2、第一种转换方法是通过判断汉字内码的编号范围来确定拼音首字母的范围,因为从编码D7F9往后的汉字都不是按拼音排序的,所以这方法会有些汉字的拼音首字母无法识别,但是基本上常用字都能识别。 3、第二种转换...

    oracle生成拼音、五笔首字母的functions方法

    本文将详细介绍如何在Oracle中实现这一功能,主要基于提供的两个SQL脚本文件:`oracle生成五笔首字母的functions方法.sql`和`oracle生成拼音首字母的functions方法.sql`。 首先,我们来探讨拼音首字母的生成。在...

    Android高仿qq列表分组

    在中文环境下,通常需要利用拼音转换库,如Pinyin4j,将汉字转换为拼音,然后依据拼音首字母进行排序。在这个案例中,好友的姓名和分组名(如省份名)可能都需要经过这样的处理,确保它们在列表中按照正确的顺序显示...

    office使用技巧与实战方法

    10. 输入汉字偏旁部首:在输入法中,如搜狗或QQ拼音,可以切换到特殊字符输入模式,选择“偏旁部首”类别,输入相应的部首,快速找到所需汉字。 11. 将Word表格转换为Excel表格:选中Word表格,复制,然后打开Excel...

    《程序天下:JavaScript实例自学手册》光盘源码

    11.15 类似QQ的菜单 11.16 三级联动菜单 11.17 三级联动菜单 11.18 树型目录菜单 第12章 窗口特效与弹出式警告 12.1 无关闭按钮的窗口 12.2 鼠标控制窗口开关 12.3 使窗口只第一次访问时弹出 12.4 禁止弹出警告框 ...

    程序天下:JavaScript实例自学手册

    11.15 类似QQ的菜单 11.16 三级联动菜单 11.17 三级联动菜单 11.18 树型目录菜单 第12章 窗口特效与弹出式警告 12.1 无关闭按钮的窗口 12.2 鼠标控制窗口开关 12.3 使窗口只第一次访问时弹出 12.4 禁止弹出警告框 ...

    delphi 开发经验技巧宝典源码

    0228 如何获取汉字拼音简码 151 0229 根据用户输入需求自动调整输入法 152 0230 根据生日自动计算年龄 153 0231 实现找零功能 153 0232 设计带记忆的数据录入窗口 154 0233 在窗体关闭时提示有未保存的...

    delphi 开发经验技巧宝典源码06

    0228 如何获取汉字拼音简码 151 0229 根据用户输入需求自动调整输入法 152 0230 根据生日自动计算年龄 153 0231 实现找零功能 153 0232 设计带记忆的数据录入窗口 154 0233 在窗体关闭时提示有未保存的...

    易语言程序免安装版下载

     静态编译后的易语言EXE/DLL之间不能再共享譬如窗口、窗口组件等类似资源,对于已经静态连接到一个EXE/DLL中的支持库,该支持库中的数据或资源将不能再被其它EXE/DLL中所使用的同名支持库访问。这是因为代码被分别...

Global site tag (gtag.js) - Google Analytics