﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-内蒙古java团队-文章分类-内蒙古计算机研究院</title><link>http://www.blogjava.net/gdws/category/27457.html</link><description>j2se,j2ee开发组</description><language>zh-cn</language><lastBuildDate>Sat, 06 Feb 2010 05:21:06 GMT</lastBuildDate><pubDate>Sat, 06 Feb 2010 05:21:06 GMT</pubDate><ttl>60</ttl><item><title>Java实现汉字转换为拼音 [转]</title><link>http://www.blogjava.net/gdws/articles/311702.html</link><dc:creator>帅子</dc:creator><author>帅子</author><pubDate>Tue, 02 Feb 2010 09:12:00 GMT</pubDate><guid>http://www.blogjava.net/gdws/articles/311702.html</guid><wfw:comment>http://www.blogjava.net/gdws/comments/311702.html</wfw:comment><comments>http://www.blogjava.net/gdws/articles/311702.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gdws/comments/commentRss/311702.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gdws/services/trackbacks/311702.html</trackback:ping><description><![CDATA[代码说明：
<p>　　<a class="channel_keylink" href="http://java.chinaitlab.com/" target="_blank">Java</a>实现汉字转换为拼音的GUI版本。</p><p>　　GUI代码部分：</p><p>　　/**</p><p>　　* @(#)CnToSpellGUI.java</p><p>　　* kindani</p><p>　　* 2004-10-25??</p><p>　　* */</p><p>　　import java.awt.*;</p><p>　　import java.awt.event.*;</p><p>　　import javax.swing.*;</p><p>　　import javax.swing.event.*;</p><p>　　/**</p><p>　　*</p><p>　　*</p><p>　　JDK版本</p><p>　　1.4</p><p>　　* @author KIN</p><p>　　* @version 1.0</p><p>　　* @see</p><p>　　* @since 1.0</p><p>　　*/</p><p>　　public class CnToSpell2GUI extends JFrame {</p><p>　　private CnToSpell2GUI c = null;</p><p>　　public CnToSpell2GUI () {</p><p>　　super("Cn to Spell");</p><p>　　setSize(800,100);</p><p>　　getContentPane().setLayout(new FlowLayout());</p><p>　　// component layout</p><p>　　JTextArea from = new JTextArea(5,20);</p><p>　　JTextArea to = new JTextArea(5,20);</p><p>　　JButton b = new JButton("cn to pinyin");</p><p>　　getContentPane().add(new JLabel("From:"));</p><p>　　getContentPane().add(from);</p><p>　　getContentPane().add(b);</p><p>　　getContentPane().add(new JLabel("To:"));</p><p>　　getContentPane().add(to);</p><p>　　// action handle</p><p>　　b.addActionListener(new Cn2PinyinActionListener(from,to));</p><p>　　setVisible(true);</p><p>　　// set this for pack</p><p>　　c = this;</p><p>　　}<br />/**button action listener to convert text to pinyin from one textbox to another textbox*/</p><p>　　class Cn2PinyinActionListener implements ActionListener{</p><p>　　private JTextArea from = null;</p><p>　　private JTextArea to = null;</p><p>　　public Cn2PinyinActionListener(JTextArea from, JTextArea to) {</p><p>　　this.from = from;</p><p>　　this.to = to;</p><p>　　}</p><p>　　public void actionPerformed(ActionEvent e) {</p><p>　　if (from.getText().length() == 0) {</p><p>　　JOptionPane.showMessageDialog(from,"From text is empty!","Warning",JOptionPane.WARNING_MESSAGE);</p><p>　　}</p><p>　　String text = from.getText();</p><p>　　to.setText(CnToSpell.getFullSpell(text));</p><p>　　c.pack();</p><p>　　}</p><p>　　}</p><p>　　public static void main(String [] args) {</p><p>　　CnToSpell2GUI g = new CnToSpell2GUI();</p><p>　　}</p><p>　　}</p><p>　　　/**</p><p>　　* @(#)CnToSpell.java</p><p>　　* 版权声明 Easydozer 版权所有 违者必究</p><p>　　*</p><p>　　* 修订记录:</p><p>　　* 1)更改者：Easydozer</p><p>　　* 时　间：2004-10-20</p><p>　　* 描　述：创建</p><p>　　*/</p><p>　　package com.easydozer.commons.util;</p><p>　　import java.util.Iterator;</p><p>　　import java.util.LinkedHashMap;</p><p>　　import java.util.Set;</p><p>　　/**</p><p>　　*</p><p>　　汉字转化为全拼</p><p>　　*</p><p>　　JDK版本:</p><p>　　1.4</p><p>　　* @author 谢计生</p><p>　　* @version 1.0</p><p>　　* @see</p><p>　　* @since 1.0</p><p>　　*/</p><p>　　public class CnToSpell</p><p>　　{</p><p>　　private static LinkedHashMap spellMap = null;</p><p>　　static</p><p>　　{</p><p>　　if(spellMap == null){</p><p>　　spellMap = new LinkedHashMap(400);</p><p>　　}</p><p>　　initialize();</p><p>　　System.out.println("Chinese transfer Spell Done.");</p><p>　　}<br />private CnToSpell()</p><p>　　{</p><p>　　}</p><p>　　private static void spellPut(String spell,int ascii)</p><p>　　{</p><p>　　spellMap.put(spell,new Integer(ascii));</p><p>　　}</p><p>　　private static void initialize()</p><p>　　{</p><p>　　spellPut("a", -20319);</p><p>　　spellPut("ai", -20317);</p><p>　　spellPut("an", -20304);</p><p>　　spellPut("ang", -20295);</p><p>　　spellPut("ao", -20292);</p><p>　　spellPut("ba", -20283);</p><p>　　spellPut("bai", -20265);</p><p>　　spellPut("ban", -20257);</p><p>　　spellPut("bang", -20242);</p><p>　　spellPut("bao", -20230);</p><p>　　spellPut("bei", -20051);</p><p>　　spellPut("ben", -20036);</p><p>　　spellPut("beng", -20032);</p><p>　　spellPut("bi", -20026);</p><p>　　spellPut("bian", -20002);</p><p>　　spellPut("biao", -19990);</p><p>　　spellPut("bie", -19986);</p><p>　　spellPut("bin", -19982);</p><p>　　spellPut("bing", -19976);</p><p>　　spellPut("bo", -19805);</p><p>　　spellPut("bu", -19784);</p><p>　　spellPut("ca", -19775);</p><p>　　spellPut("cai", -19774);</p><p>　　spellPut("can", -19763);</p><p>　　spellPut("cang", -19756);</p><p>　　spellPut("cao", -19751);</p><p>　　spellPut("ce", -19746);</p><p>　　spellPut("ceng", -19741);</p><p>　　spellPut("cha", -19739);</p><p>　　spellPut("chai", -19728);</p><p>　　spellPut("chan", -19725);</p><p>　　spellPut("chang", -19715);</p><p>　　spellPut("chao", -19540);</p><p>　　spellPut("che", -19531);</p><p>　　spellPut("chen", -19525);</p><p>　　spellPut("cheng", -19515);</p><p>　　spellPut("chi", -19500);</p><p>　　spellPut("chong", -19484);</p><p>　　spellPut("chou", -19479);</p><p>　　spellPut("chu", -19467);</p><p>　　spellPut("chuai", -19289);</p><p>　　spellPut("chuan", -19288);</p><p>　　spellPut("chuang", -19281);</p><p>　　spellPut("chui", -19275);</p><p>　　spellPut("chun", -19270);</p><p>　　spellPut("chuo", -19263);</p><p>　　spellPut("ci", -19261);</p><p>　　spellPut("cong", -19249);</p><p>　　spellPut("cou", -19243);</p><p>　　spellPut("cu", -19242);</p><p>　　spellPut("cuan", -19238);</p><p>　　spellPut("cui", -19235);</p><p>　　spellPut("cun", -19227);</p><p>　　spellPut("cuo", -19224);</p><p>　　spellPut("da", -19218);</p><p>　　spellPut("dai", -19212);</p><p>　　spellPut("dan", -19038);<br />spellPut("dang", -19023);</p><p>　　spellPut("dao", -19018);</p><p>　　spellPut("de", -19006);</p><p>　　spellPut("deng", -19003);</p><p>　　spellPut("di", -18996);</p><p>　　spellPut("dian", -18977);</p><p>　　spellPut("diao", -18961);</p><p>　　spellPut("die", -18952);</p><p>　　spellPut("ding", -18783);</p><p>　　spellPut("diu", -18774);</p><p>　　spellPut("dong", -18773);</p><p>　　spellPut("dou", -18763);</p><p>　　spellPut("du", -18756);</p><p>　　spellPut("duan", -18741);</p><p>　　spellPut("dui", -18735);</p><p>　　spellPut("dun", -18731);</p><p>　　spellPut("duo", -18722);</p><p>　　spellPut("e", -18710);</p><p>　　spellPut("en", -18697);</p><p>　　spellPut("er", -18696);</p><p>　　spellPut("fa", -18526);</p><p>　　spellPut("fan", -18518);</p><p>　　spellPut("fang", -18501);</p><p>　　spellPut("fei", -18490);</p><p>　　spellPut("fen", -18478);</p><p>　　spellPut("feng", -18463);</p><p>　　spellPut("fo", -18448);</p><p>　　spellPut("fou", -18447);</p><p>　　spellPut("fu", -18446);</p><p>　　spellPut("ga", -18239);</p><p>　　spellPut("gai", -18237);</p><p>　　spellPut("gan", -18231);</p><p>　　spellPut("gang", -18220);</p><p>　　spellPut("gao", -18211);</p><p>　　spellPut("ge", -18201);</p><p>　　spellPut("gei", -18184);</p><p>　　spellPut("gen", -18183);</p><p>　　spellPut("geng", -18181);</p><p>　　spellPut("gong", -18012);</p><p>　　spellPut("gou", -17997);</p><p>　　spellPut("gu", -17988);</p><p>　　spellPut("gua", -17970);</p><p>　　spellPut("guai", -17964);</p><p>　　spellPut("guan", -17961);</p><p>　　spellPut("guang", -17950);</p><p>　　spellPut("gui", -17947);</p><p>　　spellPut("gun", -17931);</p><p>　　spellPut("guo", -17928);</p><p>　　spellPut("ha", -17922);</p><p>　　spellPut("hai", -17759);</p><p>　　spellPut("han", -17752);</p><p>　　spellPut("hang", -17733);</p><p>　　spellPut("hao", -17730);</p><p>　　spellPut("he", -17721);</p><p>　　spellPut("hei", -17703);</p><p>　　spellPut("hen", -17701);</p><p>　　spellPut("heng", -17697);</p><p>　　spellPut("hong", -17692);</p><p>　　spellPut("hou", -17683);</p><p>　　spellPut("hu", -17676);</p><p>　　spellPut("hua", -17496);</p><p>　　spellPut("huai", -17487);</p><p>　　spellPut("huan", -17482);</p><p>　　spellPut("huang", -17468);</p><p>　　spellPut("hui", -17454);</p><p>　　spellPut("hun", -17433);</p><p>　　spellPut("huo", -17427);</p><p>　　spellPut("ji", -17417);</p><p>　　spellPut("jia", -17202);</p><p>　　spellPut("jian", -17185);</p><p>　　spellPut("jiang", -16983);</p><p>　　spellPut("jiao", -16970);</p><p>　　spellPut("jie", -16942);</p><p>　　spellPut("jin", -16915);</p><p>　　spellPut("jing", -16733);</p><p>　　spellPut("jiong", -16708);</p><p>　　spellPut("jiu", -16706);</p><p>　　spellPut("ju", -16689);</p><p>　　spellPut("juan", -16664);</p><p>　　spellPut("jue", -16657);</p><p>　　spellPut("jun", -16647);</p><p>　　spellPut("ka", -16474);</p><p>　　spellPut("kai", -16470);</p><p>　　spellPut("kan", -16465);</p><p>　　spellPut("kang", -16459);</p><p>　　spellPut("kao", -16452);</p><p>　　spellPut("ke", -16448);</p><p>　　spellPut("ken", -16433);</p><p>　　spellPut("keng", -16429);</p><p>　　spellPut("kong", -16427);</p><p>　　spellPut("kou", -16423);</p><p>　　spellPut("ku", -16419);</p><p>　　spellPut("kua", -16412);</p><p>　　spellPut("kuai", -16407);</p><p>　　spellPut("kuan", -16403);</p><p>　　spellPut("kuang", -16401);</p><p>　　spellPut("kui", -16393);</p><p>　　spellPut("kun", -16220);<br />spellPut("kuo", -16216);</p><p>　　spellPut("la", -16212);</p><p>　　spellPut("lai", -16205);</p><p>　　spellPut("lan", -16202);</p><p>　　spellPut("lang", -16187);</p><p>　　spellPut("lao", -16180);</p><p>　　spellPut("le", -16171);</p><p>　　spellPut("lei", -16169);</p><p>　　spellPut("leng", -16158);</p><p>　　spellPut("li", -16155);</p><p>　　spellPut("lia", -15959);</p><p>　　spellPut("lian", -15958);</p><p>　　spellPut("liang", -15944);</p><p>　　spellPut("liao", -15933);</p><p>　　spellPut("lie", -15920);</p><p>　　spellPut("lin", -15915);</p><p>　　spellPut("ling", -15903);</p><p>　　spellPut("liu", -15889);</p><p>　　spellPut("long", -15878);</p><p>　　spellPut("lou", -15707);</p><p>　　spellPut("lu", -15701);</p><p>　　spellPut("lv", -15681);</p><p>　　spellPut("luan", -15667);</p><p>　　spellPut("lue", -15661);</p><p>　　spellPut("lun", -15659);</p><p>　　spellPut("luo", -15652);</p><p>　　spellPut("ma", -15640);</p><p>　　spellPut("mai", -15631);</p><p>　　spellPut("man", -15625);</p><p>　　spellPut("mang", -15454);</p><p>　　spellPut("mao", -15448);</p><p>　　spellPut("me", -15436);</p><p>　　spellPut("mei", -15435);</p><p>　　spellPut("men", -15419);</p><p>　　spellPut("meng", -15416);</p><p>　　spellPut("mi", -15408);</p><p>　　spellPut("mian", -15394);</p><p>　　spellPut("miao", -15385);</p><p>　　spellPut("mie", -15377);</p><p>　　spellPut("min", -15375);</p><p>　　spellPut("ming", -15369);</p><p>　　spellPut("miu", -15363);</p><p>　　spellPut("mo", -15362);</p><p>　　spellPut("mou", -15183);</p><p>　　spellPut("mu", -15180);</p><p>　　spellPut("na", -15165);</p><p>　　spellPut("nai", -15158);</p><p>　　spellPut("nan", -15153);</p><p>　　spellPut("nang", -15150);</p><p>　　spellPut("nao", -15149);</p><p>　　spellPut("ne", -15144);</p><p>　　spellPut("nei", -15143);</p><p>　　spellPut("nen", -15141);</p><p>　　spellPut("neng", -15140);</p><p>　　spellPut("ni", -15139);</p><p>　　spellPut("nian", -15128);</p><p>　　spellPut("niang", -15121);</p><p>　　spellPut("niao", -15119);</p><p>　　spellPut("nie", -15117);</p><p>　　spellPut("nin", -15110);</p><p>　　spellPut("ning", -15109);</p><p>　　spellPut("niu", -14941);</p><p>　　spellPut("nong", -14937);</p><p>　　spellPut("nu", -14933);</p><p>　　spellPut("nv", -14930);</p><p>　　spellPut("nuan", -14929);</p><p>　　spellPut("nue", -14928);</p><p>　　spellPut("nuo", -14926);</p><p>　　spellPut("o", -14922);</p><p>　　spellPut("ou", -14921);</p><p>　　spellPut("pa", -14914);</p><p>　　spellPut("pai", -14908);</p><p>　　spellPut("pan", -14902);</p><p>　　spellPut("pang", -14894);</p><p>　　spellPut("pao", -14889);</p><p>　　spellPut("pei", -14882);</p><p>　　spellPut("pen", -14873);</p><p>　　spellPut("peng", -14871);</p><p>　　spellPut("pi", -14857);</p><p>　　spellPut("pian", -14678);</p><p>　　spellPut("piao", -14674);</p><p>　　spellPut("pie", -14670);</p><p>　　spellPut("pin", -14668);</p><p>　　spellPut("ping", -14663);</p><p>　　spellPut("po", -14654);</p><p>　　spellPut("pu", -14645);</p><p>　　spellPut("qi", -14630);</p><p>　　spellPut("qia", -14594);</p><p>　　spellPut("qian", -14429);</p><p>　　spellPut("qiang", -14407);</p><p>　　spellPut("qiao", -14399);</p><p>　　spellPut("qie", -14384);</p><p>　　spellPut("qin", -14379);</p><p>　　spellPut("qing", -14368);</p><p>　　spellPut("qiong", -14355);</p><p>　　spellPut("qiu", -14353);</p><p>　　spellPut("qu", -14345);</p><p>　　spellPut("quan", -14170);</p><p>　　spellPut("que", -14159);</p><p>　　spellPut("qun", -14151);</p><p>　　spellPut("ran", -14149);</p><p>　　spellPut("rang", -14145);</p><p>　　spellPut("rao", -14140);</p><p>　　spellPut("re", -14137);</p><p>　　spellPut("ren", -14135);</p><p>　　spellPut("reng", -14125);</p><p>　　spellPut("ri", -14123);</p><p>　　spellPut("rong", -14122);</p><p>　　spellPut("rou", -14112);</p><p>　　spellPut("ru", -14109);</p><p>　　spellPut("ruan", -14099);</p><p>　　spellPut("rui", -14097);</p><p>　　spellPut("run", -14094);</p><p>　　spellPut("ruo", -14092);</p><p>　　spellPut("sa", -14090);</p><p>　　spellPut("sai", -14087);</p><p>　　spellPut("san", -14083);</p><p>　　spellPut("sang", -13917);</p><p>　　spellPut("sao", -13914);<br />spellPut("se", -13910);</p><p>　　spellPut("sen", -13907);</p><p>　　spellPut("seng", -13906);</p><p>　　spellPut("sha", -13905);</p><p>　　spellPut("shai", -13896);</p><p>　　spellPut("shan", -13894);</p><p>　　spellPut("shang", -13878);</p><p>　　spellPut("shao", -13870);</p><p>　　spellPut("she", -13859);</p><p>　　spellPut("shen", -13847);</p><p>　　spellPut("sheng", -13831);</p><p>　　spellPut("shi", -13658);</p><p>　　spellPut("shou", -13611);</p><p>　　spellPut("shu", -13601);</p><p>　　spellPut("shua", -13406);</p><p>　　spellPut("shuai", -13404);</p><p>　　spellPut("shuan", -13400);</p><p>　　spellPut("shuang", -13398);</p><p>　　spellPut("shui", -13395);</p><p>　　spellPut("shun", -13391);</p><p>　　spellPut("shuo", -13387);</p><p>　　spellPut("si", -13383);</p><p>　　spellPut("song", -13367);</p><p>　　spellPut("sou", -13359);</p><p>　　spellPut("su", -13356);</p><p>　　spellPut("suan", -13343);</p><p>　　spellPut("sui", -13340);</p><p>　　spellPut("sun", -13329);</p><p>　　spellPut("suo", -13326);</p><p>　　spellPut("ta", -13318);</p><p>　　spellPut("tai", -13147);</p><p>　　spellPut("tan", -13138);</p><p>　　spellPut("tang", -13120);</p><p>　　spellPut("tao", -13107);</p><p>　　spellPut("te", -13096);</p><p>　　spellPut("teng", -13095);</p><p>　　spellPut("ti", -13091);</p><p>　　spellPut("tian", -13076);</p><p>　　spellPut("tiao", -13068);</p><p>　　spellPut("tie", -13063);</p><p>　　spellPut("ting", -13060);</p><p>　　spellPut("tong", -12888);</p><p>　　spellPut("tou", -12875);</p><p>　　spellPut("tu", -12871);</p><p>　　spellPut("tuan", -12860);</p><p>　　spellPut("tui", -12858);</p><p>　　spellPut("tun", -12852);</p><p>　　spellPut("tuo", -12849);</p><p>　　spellPut("wa", -12838);</p><p>　　spellPut("wai", -12831);</p><p>　　spellPut("wan", -12829);</p><p>　　spellPut("wang", -12812);</p><p>　　spellPut("wei", -12802);</p><p>　　spellPut("wen", -12607);</p><p>　　spellPut("weng", -12597);</p><p>　　spellPut("wo", -12594);</p><p>　　spellPut("wu", -12585);</p><p>　　spellPut("xi", -12556);</p><p>　　spellPut("xia", -12359);</p><p>　　spellPut("xian", -12346);</p><p>　　spellPut("xiang", -12320);</p><p>　　spellPut("xiao", -12300);</p><p>　　spellPut("xie", -12120);</p><p>　　spellPut("xin", -12099);</p><p>　　spellPut("xing", -12089);</p><p>　　spellPut("xiong", -12074);</p><p>　　spellPut("xiu", -12067);</p><p>　　spellPut("xu", -12058);</p><p>　　spellPut("xuan", -12039);</p><p>　　spellPut("xue", -11867);</p><p>　　spellPut("xun", -11861);</p><p>　　spellPut("ya", -11847);</p><p>　　spellPut("yan", -11831);</p><p>　　spellPut("yang", -11798);</p><p>　　spellPut("yao", -11781);</p><p>　　spellPut("ye", -11604);</p><p>　　spellPut("yi", -11589);</p><p>　　spellPut("yin", -11536);</p><p>　　spellPut("ying", -11358);</p><p>　　spellPut("yo", -11340);</p><p>　　spellPut("yong", -11339);</p><p>　　spellPut("you", -11324);</p><p>　　spellPut("yu", -11303);</p><p>　　spellPut("yuan", -11097);</p><p>　　spellPut("yue", -11077);</p><p>　　spellPut("yun", -11067);</p><p>　　spellPut("za", -11055);</p><p>　　spellPut("zai", -11052);</p><p>　　spellPut("zan", -11045);</p><p>　　spellPut("zang", -11041);</p><p>　　spellPut("zao", -11038);</p><p>　　spellPut("ze", -11024);</p><p>　　spellPut("zei", -11020);</p><p>　　spellPut("zen", -11019);</p><p>　　spellPut("zeng", -11018);</p><p>　　spellPut("zha", -11014);<br />spellPut("zhai", -10838);</p><p>　　spellPut("zhan", -10832);</p><p>　　spellPut("zhang", -10815);</p><p>　　spellPut("zhao", -10800);</p><p>　　spellPut("zhe", -10790);</p><p>　　spellPut("zhen", -10780);</p><p>　　spellPut("zheng", -10764);</p><p>　　spellPut("zhi", -10587);</p><p>　　spellPut("zhong", -10544);</p><p>　　spellPut("zhou", -10533);</p><p>　　spellPut("zhu", -10519);</p><p>　　spellPut("zhua", -10331);</p><p>　　spellPut("zhuai", -10329);</p><p>　　spellPut("zhuan", -10328);</p><p>　　spellPut("zhuang", -10322);</p><p>　　spellPut("zhui", -10315);</p><p>　　spellPut("zhun", -10309);</p><p>　　spellPut("zhuo", -10307);</p><p>　　spellPut("zi", -10296);</p><p>　　spellPut("zong", -10281);</p><p>　　spellPut("zou", -10274);</p><p>　　spellPut("zu", -10270);</p><p>　　spellPut("zuan", -10262);</p><p>　　spellPut("zui", -10260);</p><p>　　spellPut("zun", -10256);</p><p>　　spellPut("zuo", -10254);</p><p>　　}</p><p>　　/**</p><p>　　* 获得单个汉字的Ascii.</p><p>　　* @param cn char</p><p>　　* 汉字字符</p><p>　　* @return int</p><p>　　* 错误返回 0,否则返回ascii</p><p>　　*/</p><p>　　public static int getCnAscii(char cn)</p><p>　　{</p><p>　　byte[] bytes = (String.valueOf(cn)).getBytes();</p><p>　　if(bytes == null || bytes.length &gt; 2 || bytes.length &lt;= 0){ //错误</p><p>　　return 0;</p><p>　　}</p><p>　　if(bytes.length == 1){ //英文字符</p><p>　　return bytes[0];</p><p>　　}</p><p>　　if(bytes.length == 2){ //中文字符</p><p>　　int hightByte = 256 + bytes[0];</p><p>　　int lowByte = 256 + bytes[1];</p><p>　　int ascii = (256 * hightByte + lowByte) - 256 * 256;</p><p>　　//System.out.println("ASCII=" + ascii);</p><p>　　return ascii;</p><p>　　}</p><p>　　return 0; //错误</p><p>　　}</p><p>　　/**</p><p>　　* 根据ASCII码到SpellMap中查找对应的拼音</p><p>　　* @param ascii int</p><p>　　* 字符对应的ASCII</p><p>　　* @return String</p><p>　　* 拼音,首先判断ASCII是否&gt;0&amp;&lt;160,如果是返回对应的字符,</p><p>　　*</p><p>　　否则到SpellMap中查找,如果没有找到拼音,则返回null,如果找到则返回拼音.</p><p>　　*/</p><p>　　public static String getSpellByAscii(int ascii)</p><p>　　{</p><p>　　if(ascii &gt; 0 &amp;&amp; ascii &lt; 160){ //单字符</p><p>　　return String.valueOf((char)ascii);</p><p>　　}</p><p>　　if(ascii &lt; -20319 || ascii &gt; -10247){ //不知道的字符</p><p>　　return null;</p><p>　　}</p><p>　　Set keySet = spellMap.keySet();</p><p>　　Iterator it = keySet.iterator();</p><p>　　String spell0 = null;;</p><p>　　String spell = null;</p><p>　　int asciiRang0 = -20319;</p><p>　　int asciiRang;</p><p>　　while(it.hasNext()){</p><p>　　spell = (String)it.next();</p><p>　　Object valObj = spellMap.get(spell);</p><p>　　if(valObj instanceof Integer){</p><p>　　asciiRang = ((Integer)valObj).intValue();</p><p>　　if(ascii &gt;= asciiRang0 &amp;&amp; ascii &lt; asciiRang){ //区间找到</p><p>　　return(spell0 == null) ? spell : spell0;</p><p>　　}</p><p>　　else{</p><p>　　spell0 = spell;</p><p>　　asciiRang0 = asciiRang;</p><p>　　}</p><p>　　}</p><p>　　}</p><p>　　return null;</p><p>　　}<br />/**</p><p>　　* 返回字符串的全拼,是汉字转化为全拼,其它字符不进行转换</p><p>　　* @param cnStr String</p><p>　　* 字符串</p><p>　　* @return String</p><p>　　* 转换成全拼后的字符串</p><p>　　*/</p><p>　　public static String getFullSpell(String cnStr)</p><p>　　{</p><p>　　if(null == cnStr || "".equals(cnStr.trim())){</p><p>　　return cnStr;</p><p>　　}</p><p>　　char[] chars = cnStr.toCharArray();</p><p>　　StringBuffer retuBuf = new StringBuffer();</p><p>　　for(int i = 0,Len = chars.length;i &lt; Len;i++){</p><p>　　int ascii = getCnAscii(chars);</p><p>　　if(ascii == 0){ //取ascii时出错</p><p>　　retuBuf.append(chars);</p><p>　　}</p><p>　　else{</p><p>　　String spell = getSpellByAscii(ascii);</p><p>　　if(spell == null){</p><p>　　retuBuf.append(chars);</p><p>　　}</p><p>　　else{</p><p>　　retuBuf.append(spell);</p><p>　　} // end of if spell == null</p><p>　　} // end of if ascii &lt;= -20400</p><p>　　} // end of for</p><p>　　return retuBuf.toString();</p><p>　　}</p><p>　　public static String getFirstSpell(String cnStr)</p><p>　　{</p><p>　　return null;</p><p>　　}</p><p>　　public static void main(String[] args)</p><p>　　{</p><p>　　String str = null;</p><p>　　str = "谢海101普降喜雨";</p><p>　　System.out.println("Spell=" + CnToSpell.getFullSpell(str));</p><p>　　str = "张牙舞爪》。，";</p><p>　　System.out.println("Spell=" + CnToSpell.getFullSpell(str));</p><p>　　str = "□□□□，可耻下场。";</p><p>　　System.out.println("Spell=" + CnToSpell.getFullSpell(str));</p><p>　　str = "猪油，猪八戒。";</p><p>　　System.out.println("Spell=" + CnToSpell.getFullSpell(str));</p><p>　　}</p><p>　　}</p><img src ="http://www.blogjava.net/gdws/aggbug/311702.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gdws/" target="_blank">帅子</a> 2010-02-02 17:12 <a href="http://www.blogjava.net/gdws/articles/311702.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何使用log4j记录日志</title><link>http://www.blogjava.net/gdws/articles/263160.html</link><dc:creator>帅子</dc:creator><author>帅子</author><pubDate>Tue, 31 Mar 2009 08:24:00 GMT</pubDate><guid>http://www.blogjava.net/gdws/articles/263160.html</guid><wfw:comment>http://www.blogjava.net/gdws/comments/263160.html</wfw:comment><comments>http://www.blogjava.net/gdws/articles/263160.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gdws/comments/commentRss/263160.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gdws/services/trackbacks/263160.html</trackback:ping><description><![CDATA[
		<p>如何使用log4j记录日志<br />第一步：在工程中加入log4j所使用的jar文件<br />1:项目 &gt; <wbr> 属性 ：弹出项目的属性窗口<br />2:Java构建路径&gt;?库&gt;?添加外部JAR：弹出选择JAR的窗口<br />3:通过选择JAR的窗口，找到log4j-1.2.x.jar，并确认<br />4:回到项目的属性窗口，点击确定<br />第二步：创建log4j.properties文件<br />1:选择欲使用log4j的项目&gt;?右键点击src &gt;?新建&gt;?其他 ：弹出选择向导窗口<br />2:在选择向导窗口中，选择常规?&gt; 文件?&gt; 下一步：弹出新建文件的窗口<br />3:在新建文件窗口中，输入文件名log4j.properties ? 完成：创建工作结束<br />第三步：使用log4j记录日志信息</wbr></p>
		<p>import org.apache.log4j.Logger;</p>
		<p>public class Log4j {<br /> <wbr> <wbr> <wbr> public static void main(String[] args) {<br /> <wbr> <wbr> Logger logger = Logger.getLogger(AccpTeacherLog4j.class.getName());//获取日志记录器，这个记录器将负责控制日志信息<br /> <wbr> <wbr>try {<br /> <wbr> <wbr>logger.debug("设置教员的编号。");//使用Logger对象的debug、info方法输出日志信息<br /> <wbr> <wbr>} catch (IllegalArgumentException<wbr> ex) {<br /> <wbr> <wbr>logger.info(ex.getMessage());//使用Logger对象的debug、info方法输出日志信息<br /> <wbr> <wbr> }<br /> <wbr> <wbr>  <wbr> }<br />}</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></p>
		<p>第四步：编写log4j.properties文件，配置日志信息</p>
		<p>### 把日志信息输出到控制台 ###<br />log4j.appender.stdout=org.apache.log4j.ConsoleAppender//日志信息将写到控制台<br />log4j.appender.stdout.Target=System.out//信息打印到System.out上 <wbr><br />log4j.appender.stdout.layout=org.apache.log4j.PatternLayout<br />log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} <wbr> %m%n//指定输出格式：显示日期和log信息 <wbr></wbr></wbr></wbr></p>
		<p>### 把日志信息输出到文件：accp.log ###<br />log4j.appender.file=org.apache.log4j.FileAppender//日志信息将写到文件中 <wbr><br />log4j.appender.file.File=accp.log//指定日志输出的文件名 <wbr><br />log4j.appender.file.layout=org.apache.log4j.PatternLayout<br />log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} <wbr> %l <wbr> %m%n//指定输出格式：显示日期，日志发生位置和日志信息</wbr></wbr></wbr></wbr></p>
		<p>### 设置优先级别、以及输出源 ###<br />log4j.rootLogger=debug, stdout, file//设置优先级别为debug、<br />日志被输出到多个输出源</p>
		<p>注：优先级从高到低分别是ERROR、WARN、INFO、DEBUG<br />在此处，如果优先级别设为info，那么使用debug方法打印的日志信息将不被输出</p>
<img src ="http://www.blogjava.net/gdws/aggbug/263160.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gdws/" target="_blank">帅子</a> 2009-03-31 16:24 <a href="http://www.blogjava.net/gdws/articles/263160.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tomcat上创建和发布Web应用</title><link>http://www.blogjava.net/gdws/articles/263153.html</link><dc:creator>帅子</dc:creator><author>帅子</author><pubDate>Tue, 31 Mar 2009 08:15:00 GMT</pubDate><guid>http://www.blogjava.net/gdws/articles/263153.html</guid><wfw:comment>http://www.blogjava.net/gdws/comments/263153.html</wfw:comment><comments>http://www.blogjava.net/gdws/articles/263153.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gdws/comments/commentRss/263153.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gdws/services/trackbacks/263153.html</trackback:ping><description><![CDATA[
		<p>          本文详细介绍TOMCAT服务器上的应用，介绍如何在Tomcat上创建和发布Web应用。这里首先讲解Tomcat的目录结构以及Web应用的目录结构，接着介绍如何将HTML、Servlet、JSP和Tag Library部署到Web应用中，然后介绍把整个Web应用打包并发布的方法，最后介绍如何在Tomcat上配置虚拟主机。<br /><br />本章侧重于讨论Web应用的结构和发布方法，所以没有对本章的Servlet和JSP的例子进行详细解释，关于Servlet和JSP的技术可以分别参考其它章节的内容。<br /><br />2.1 Tomcat的目录结构<br /><br />在Tomcat上发布Web应用之前，首先要了解Tomcat的目录结构。Tomcat的目录结构参见表2-1，这些目录都是的子目录。<br /><br />表2-1 Tomcat的目录结构</p>
		<center>
				<table border="1">
						<tbody>
								<tr>
										<td>目 录</td>
										<td>描 述</td>
								</tr>
								<tr>
										<td>/bin</td>
										<td>存放在Windows平台 以及Linux平台上启动 和关闭Tomcat的脚本文件</td>
								</tr>
								<tr>
										<td>/conf</td>
										<td>存放Tomcat服务器的各种配置文件， 其中最重要的配置文件是server.xml</td>
								</tr>
								<tr>
										<td>/server</td>
										<td>包含3个子目录: classes、lib和webapps</td>
								</tr>
								<tr>
										<td>/server/lib</td>
										<td>存放Tomcat服务器所需的各种JAR文件</td>
								</tr>
								<tr>
										<td>/server/webapps</td>
										<td>存放Tomcat自带的两个Web应用: admin应用和manager应用</td>
								</tr>
								<tr>
										<td>/common/lib</td>
										<td>存放Tomcat服务器以及所有 Web应用都可以访问的JAR文件</td>
								</tr>
								<tr>
										<td>/shared/lib</td>
										<td>存放所有Web应用都可以访问的JAR文件</td>
								</tr>
								<tr>
										<td>/logs</td>
										<td>存放Tomcat的日志文件</td>
								</tr>
								<tr>
										<td>/webapps</td>
										<td>当发布Web应用时， 默认情况下把Web应用 文件放于此目录下</td>
								</tr>
								<tr>
										<td>/work</td>
										<td>Tomcat把由JSP生成的 Servlet放于此目录下</td>
								</tr>
						</tbody>
				</table>
		</center>
		<br />
		<br />从表2-1可以看出，在/server/lib目录、/common/lib和/shared/lib目录下都可以放JAR文件，它们的区别在于：<br /><br />在/server/lib目录下的JAR文件只可被Tomcat服务器访问<br /><br />在/shared/lib目录下的JAR文件可以被所有的Web应用访问，但不能被Tomcat服务器访问<br /><br />在/common/lib目录下的JAR文件可以被Tomcat服务器和所有Web应用访问<br /><br />此外，对于下面将要介绍的Java Web应用，在它的WEB-INF目录下，也可以建立lib子目录，在lib子目录下可以放各种JAR文件，这些JAR文件只能被当前Web应用访问。<br /><br />在以上提到的lib目录下都只接受JAR文件，如果类压缩文件为ZIP文件，应该将它展开，重新打包为JAR文件再拷贝到lib目录中。如果直接将ZIP文件拷贝到lib目录，则会发现Tomcat服务器仍然找不到相关的类。打包命令参见2.2.8节。<br /><br />2.2 创建和发布Web应用<br /><br />Java Web应用由一组静态HTML页、Servlet、JSP和其他相关的class组成。每种组件在Web应用中都有固定的存放目录。Web应用的配置信息存放在web.xml文件中。在发布某些组件（如Servlet）时，必须在web.xml文件中添加相应的配置信息。<br /><br />2.2.1 Web应用的目录结构<br /><br />Web应用具有固定的目录结构，这里假定开发一个名为helloapp的Web应用。首先，应该在/webapps目录下创建这个Web应用的目录结构，参见表2-2。<br /><br />表2-2 Web应用的目录结构<br /><br /><center><table border="1"><tbody><tr><td>目 录</td><td>描 述</td></tr><tr><td>/helloapp</td><td>Web应用的根目录， 所有的JSP和HTML文件 都存放于此目录下</td></tr><tr><td>/helloapp/WEB-INF</td><td>存放Web应用的发布描述文件web.xml</td></tr><tr><td>/helloapp/WEB-INF/classes</td><td>存放各种class文件， Servlet类文件也放于此目录下</td></tr><tr><td>/helloapp/WEB-INF/lib</td><td>存放Web应用所需的各种JAR文件</td></tr></tbody></table></center><br /><br />例如，在这个目录下，可以存放JDBC驱动程序的JAR文件<br /><br />从表2-2中，我们看到在classes以及lib子目录下，都可以存放Java类文件。在运行过程中，Tomcat的类装载器先装载classes目录下的类，再装载lib目录下的类。因此，如果两个目录下存在同名的类，classes目录下的类具有优先权。<br /><br />本章介绍的helloapp应用的目录结构如图2-1所示，helloapp应用在Windows资源管理器中的展开如图2-2所示。<br /><br />在helloapp应用中创建了如下组件：<br /><br />HTML组件：index.htm<br /><br />JSP组件：login.jsp和hello.jsp<br /><br />Servlet组件：DispatcherServlet<br /><br />这些组件之间的链接关系为：<br /><br />index.htm→login.jsp→DispatcherServlet→hello.jsp<br /><br /><br /><br />2.2.2 web.xml文件<br /><br />Java Web应用通过一个基于XML的发布描述符文件来配置其发布信息，这个文件名为web.xml，它存放于WEB-INF子目录下。在附录B中将详细介绍web.xml的配置方法，在附录C中将介绍XML的基本知识。在web.xml文件中可包含如下配置信息：<br /><br />Servlet的定义<br /><br />Servlet的初始化参数<br /><br />Servlet以及JSP的映射<br /><br />安全域配置参数<br /><br />welcome文件清单<br /><br />资源引用<br /><br />环境变量的定义<br /><br />现在，创建一个默认的web.xml文件，并把这个文件放到WEB-INF目录中。<br /><br /><center><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="#000000" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;<br />&lt;!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3 //EN' 'http://java.sun.com/ j2ee/dtds/web-app_2_3.dtd'&gt;<br />&lt;web-app&gt;&lt;/web-app&gt;</pre></td></tr></tbody></table></center><br /><br />以上web.xml文件的第一行指定了XML的版本和字符编码，第二行DOCTYPE指定文档类型，接下来声明了一个元素，所有关于Web应用的配置元素都将加入到这个元素中。<br /><br />2.2.3 在server.xml中加入元素<br /><br />元素是/conf/server.xml中使用最频繁的元素，它代表了运行在上的单个Web应用。一个中可以有多个元素。每个Web应用必须有惟一的URL路径，这个URL路径在元素的path属性中设定。例如，在名为"localhost"的元素中加入如下元素：<br /><br /><center><table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="#000000" border="1"><tbody><tr><td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"><pre>&lt;!-- Define the default virtual host --&gt;<br />&lt;Host name="localhost" debug="0" appBase="webapps"unpackWARs="true" autoDeploy="true"&gt;<br />…………<br />&lt;Context path="/helloapp"docBase="helloapp" debug="0"reloadable="true"/&gt;<br />&lt;/Host&gt;</pre></td></tr></tbody></table></center><br /><br />Context元素的各个属性的说明参见表2-3。<br /><br />表2-3 Context元素的属性<br /><br /><center><table border="1"><tbody><tr><td>属 性</td><td>描 述</td></tr><tr><td>path</td><td>指定访问该Web应用的URL入口</td></tr><tr><td>docBase</td><td>指定Web应用的文件路径，可以给定绝对路径，也可以给定相对于Host的appBase属性的相对路径（关于Host的appBase属性参见2.3节）。如果Web应用采用开放目录结构，则指定Web应用的根目录；如果Web应用是个WAR文件，则指定WAR文件的路径</td></tr><tr><td>reloadable</td><td>如果这个属性设为true， Tomcat服务器在运行状态下会监视在WEB-INF/classes 和WEB-INF/lib目录下class文件的改动。如果监测到有class文件被更新，服务器会自动重新加载Web应用</td></tr></tbody></table></center><br /><br />在开发阶段，将reloadable属性设为true，有助于调试Servlet和其他的class文件。但是由于这一功能会加重服务器的运行负荷，因此建议在Web应用的产品发布阶段，将这个属性设为false。<img src ="http://www.blogjava.net/gdws/aggbug/263153.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gdws/" target="_blank">帅子</a> 2009-03-31 16:15 <a href="http://www.blogjava.net/gdws/articles/263153.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>公司介绍</title><link>http://www.blogjava.net/gdws/articles/162053.html</link><dc:creator>帅子</dc:creator><author>帅子</author><pubDate>Wed, 21 Nov 2007 03:48:00 GMT</pubDate><guid>http://www.blogjava.net/gdws/articles/162053.html</guid><wfw:comment>http://www.blogjava.net/gdws/comments/162053.html</wfw:comment><comments>http://www.blogjava.net/gdws/articles/162053.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/gdws/comments/commentRss/162053.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gdws/services/trackbacks/162053.html</trackback:ping><description><![CDATA[<br />
&nbsp;&nbsp;&nbsp;&nbsp; 内蒙古计算机研究院到现在已经成立30多年，走出了自己发展的路子，是内蒙古最有潜力和实力的一家企业公司，公司一直以人为本的原则，深受广大群众的喜欢。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 公司是以Gis产业为主，多元化产品为辅的一家中和性企业，里面汇集了许多行业精英。<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; 欢迎大家前来了解。<br />
<br />
&nbsp;&nbsp; 我们的网址：<a href="http://www.nmgygzx.com">www.nmgygzx.com</a>
 <img src ="http://www.blogjava.net/gdws/aggbug/162053.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gdws/" target="_blank">帅子</a> 2007-11-21 11:48 <a href="http://www.blogjava.net/gdws/articles/162053.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>