·您的位置: 首页 » 资源教程 » 编程开发 » JAVA、JSP » 获得汉字拼音首字母的java工具类

获得汉字拼音首字母的java工具类

类别: JAVA教程  评论数:0 总得分:0

public class GetCh2Spell {
    public static int compare(String str1, String str2)
     {
         int result = 0;
         String m_s1 = null;
         String m_s2 = null;
         try
         {
             m_s1 = new String(str1.getBytes(_FromEncode_), _ToEncode_);
             m_s2 = new String(str2.getBytes(_FromEncode_), _ToEncode_);
         }
         catch(Exception e)
         {
             return str1.compareTo(str2);
         }
         result = chineseCompareTo(m_s1, m_s2);
         return result;
     }

     public static int getCharCode(String s)
     {
         if(s == null && s.equals(\"\"))
             return -1;
         byte b[] = s.getBytes();
         int value = 0;
         for(int i = 0; i < b.length && i <= 2; i++)
             value = value * 100 + b[i];

         return value;
     }

     public static int chineseCompareTo(String s1, String s2)
     {
         int len1 = s1.length();
         int len2 = s2.length();
         int n = Math.min(len1, len2);
         for(int i = 0; i < n; i++)
         {
             int s1_code = getCharCode(s1.charAt(i) + \"\");
             int s2_code = getCharCode(s2.charAt(i) + \"\");
             if(s1_code * s2_code < 0)
                 return Math.min(s1_code, s2_code);
             if(s1_code != s2_code)
                 return s1_code - s2_code;
         }

         return len1 - len2;
     }

     public static String getBeginCharacter(String res)
     {
         String a = res;
         String result = \"\";
         for(int i = 0; i < a.length(); i++)
         {
             String current = a.substring(i, i + 1);
             if(compare(current, \"/u554A\") < 0)
                 result = result + current;
             else
             if(compare(current, \"/u554A\") >= 0 && compare(current, \"/u5EA7\") <= 0)
                 if(compare(current, \"/u531D\") >= 0)
                     result = result + \"z\";
                 else
                 if(compare(current, \"/u538B\") >= 0)
                     result = result + \"y\";
                 else
                 if(compare(current, \"/u6614\") >= 0)
                     result = result + \"x\";
                 else
                 if(compare(current, \"/u6316\") >= 0)
                     result = result + \"w\";
                 else
                 if(compare(current, \"/u584C\") >= 0)
                     result = result + \"t\";
                 else
                 if(compare(current, \"/u6492\") >= 0)
                     result = result + \"s\";
                 else
                 if(compare(current, \"/u7136\") >= 0)
                     result = result + \"r\";
                 else
                 if(compare(current, \"/u671F\") >= 0)
                     result = result + \"q\";
                 else
                 if(compare(current, \"/u556A\") >= 0)
                     result = result + \"p\";
                 else
                 if(compare(current, \"/u54E6\") >= 0)
                     result = result + \"o\";
                 else
                 if(compare(current, \"/u62FF\") >= 0)
                     result = result + \"n\";
                 else
                 if(compare(current, \"/u5988\") >= 0)
                     result = result + \"m\";
                 else
                 if(compare(current, \"/u5783\") >= 0)
                     result = result + \"l\";
                 else
                 if(compare(current, \"/u5580\") >= 0)
                     result = result + \"k\";
                 else
                 if(compare(current, \"/u51FB\") > 0)
                     result = result + \"j\";
                 else
                 if(compare(current, \"/u54C8\") >= 0)
                     result = result + \"h\";
                 else
                 if(compare(current, \"/u5676\") >= 0)
                     result = result + \"g\";
                 else
                 if(compare(current, \"/u53D1\") >= 0)
                     result = result + \"f\";
                 else
                 if(compare(current, \"/u86FE\") >= 0)
                     result = result + \"e\";
                 else
                 if(compare(current, \"/u642D\") >= 0)
                     result = result + \"d\";
                 else
                 if(compare(current, \"/u64E6\") >= 0)
                     result = result + \"c\";
                 else
                 if(compare(current, \"/u82AD\") >= 0)
                     result = result + \"b\";
                 else
                 if(compare(current, \"/u554A\") >= 0)
                     result = result + \"a\";
         }

         return result;
     }

     public static String getFirstStr(String str)
     {
         char a = str.charAt(0);
         char aa[] = {
             a
         };
         String sss = new String(aa);
         if(Character.isDigit(aa[0]))
             sss = \"data\";
         else
         if(a >= \'a\' && a <= \'z\' || a >= \'A\' && a <= \'Z\')
             sss = \"character\";
         else
             sss = getBeginCharacter(sss);
         return sss;
     }

     private static String _FromEncode_ = \"GBK\";
     private static String _ToEncode_ = \"GBK\";

}




-= 资 源 教 程 =-
文 章 搜 索
关键词:
类型:
范围:
纯粹空间 softpure.com
Copyright © 2006-2008 暖阳制作 版权所有
QQ: 15242663 (拒绝闲聊)  Email: faisun@sina.com
 纯粹空间 - 韩国酷站|酷站欣赏|教程大全|资源下载|免费博客|美女壁纸|设计素材|技术论坛   Valid XHTML 1.0 Transitional
百度搜索 谷歌搜索 Alexa搜索 | 粤ICP备19116064号-1