<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ChenTaoqian&#039;s Blog</title>
	<atom:link href="http://www.chentaoqian.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.chentaoqian.com</link>
	<description>主机,企业邮箱,域名,空间,服务器,Java,Oracle,PHP,Linux,JS,MySQL,Apache</description>
	<lastBuildDate>Sun, 08 Aug 2010 10:48:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>JSP实现URL中文编码</title>
		<link>http://www.chentaoqian.com/archives/775</link>
		<comments>http://www.chentaoqian.com/archives/775#comments</comments>
		<pubDate>Sun, 08 Aug 2010 10:48:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JSP]]></category>
		<category><![CDATA[url]]></category>
		<category><![CDATA[编码]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=775</guid>
		<description><![CDATA[URL中传中文字符是件头疼事，本身URL不支持中文字符，但有些情况下又不得不传中文字当参数，若直接把中文字加上去，获取后势必会是乱码，这该怎么办呢？幸好JAVA提供一个URL中字符编码转换的API&#8211;URLEncoder，下面给段使用范例：
public class Common{
public static String encode(String s) {
try {
return URLEncoder.encode(s,JspRunConfig.CHARSET);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return s;
}
public static String decode(String s) {
try {
return URLDecoder.decode(s,JspRunConfig.CHARSET);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return s;
}
}
使用时，如果不做任何处理就直接传递，中文也许没有问题（但不保证），但空格肯定会有问题，到接收页面无法识别。
解决办法1：Common.encode(sContent,&#8221;utf-8&#8243;); 然后再传递。比如url是&#8221;accept.jsp?content=&#8221;+sContent;
读取时，使用
String sc = request.getParameter(&#8220;content&#8221;);
sc = new String(sc.getBytes(&#8220;iso-8859-1&#8243;),&#8221;utf-8&#8243;);
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/775/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>关注wap用户-删除JSP编译后的空行</title>
		<link>http://www.chentaoqian.com/archives/772</link>
		<comments>http://www.chentaoqian.com/archives/772#comments</comments>
		<pubDate>Sun, 08 Aug 2010 07:54:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JSP]]></category>
		<category><![CDATA[wap]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=772</guid>
		<description><![CDATA[wap用户不同于HTTP用户，对于他们小小的屏幕来说，每一行都是很宝贵的，任何一行无效的空行都会导致用户体验差。对于这种情况该如何呢？
方案1.在Tomcat安装目录/conf/web.xml中找到名叫&#8221;jsp&#8221;的servlet，添加下面一段代码：
&#60;init-param&#62;
&#60;param-name&#62;trimSpaces&#60;/param-name&#62;
&#60;param-value&#62;true&#60;/param-value&#62;
&#60;/init-param&#62;
添加代码后删除work缓存
方案2.&#60;%@ page trimDirectiveWhitespaces=&#8221;true&#8221; %&#62;每个页面加上,此方法最有效,但是比较麻烦
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/772/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>3种方式轻松解决administrator帐户不在用户登录内(windows xp)</title>
		<link>http://www.chentaoqian.com/archives/770</link>
		<comments>http://www.chentaoqian.com/archives/770#comments</comments>
		<pubDate>Sat, 31 Jul 2010 00:53:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=770</guid>
		<description><![CDATA[安装Windows XP时，如果设置了一个管理员账户，那么系统内置没有密码保护的Administrator管理员账户是不会出现在用户登录列表中的。虽然它身在幕后，可却拥有系统最高权限，为了方便操作及保证系统安全，可以先给它设置密码，然后再把它请到台前来。以下便介绍具体方法。
1.使用“传统登录提示”登录
启动系统到欢迎屏幕时，按两次“Ctrl+Alt+Delete”组合键，在出现的登录框中输入Administrator账户的用户名和密码即可。也可以单击“开始→控制面板”，双击“用户账号”图标，在弹出的“用户账号”窗口中，单击“更改用户登录或注销的方式”，去掉“使用欢迎屏幕”前的复选框，单击“应用选项”即可在启动时直接输入Administrator账户名及密码登录。

2.在登录的欢迎屏幕显示Administrator账户
单击“开始→运行”，输入regedit后回车，打开注册表编辑器，依次展开“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList”分支，将右边的Administrator的值改为1，即可让Administrator账户出现在登录的欢迎屏幕上。
3.自动登录到Administrator账户
单击“开始→运行”，输入control userpasswords2后回车，在打开的“用户账户”窗口去掉“要使用本机，用户必须输入密码”前的复选框，按“应用”后，在弹出的“自动登录”窗口中输入Administrator账户密码(如图1)，按两次“确定”即可。注意：如果原来就设置了其它账户自动登录，应该先选中“要使用本机，用户必须输入密码”前的复选框，按“应用”后再去掉选中的复选框。也可以修改注册表实现自动登录，不过没有以上方法方便。
当然，如果不需要Administrator账户，可以依次打开“开始→控制面板→管理工具→计算机管理”，在“计算机管理”窗口，展开“系统工具→本地用户和组→用户”，在“用户”右边窗口双击Administrator账户，在弹出的“属性”窗口中选中“账号已停用”前的复选框(如图2)，按“确定”即可停用Administrator账户。
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/770/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2种方式轻松解决windows系统自动登录</title>
		<link>http://www.chentaoqian.com/archives/768</link>
		<comments>http://www.chentaoqian.com/archives/768#comments</comments>
		<pubDate>Sat, 31 Jul 2010 00:51:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[登录]]></category>
		<category><![CDATA[自动]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=768</guid>
		<description><![CDATA[如何使系统自动登录的方法
1.control userpasswords2
2.  开始\运行输入Regedit进入hkey_local_machine\software\microsoft\windows nt\currentversion\winlogon主键下，单击“编辑”菜单的“新建”命令添加新值，数值名称为“defaultusername”，数据类型为字串值。然后双击该键，当出现“字符串编辑器”对话框时，在“字符串”文本框中将键值改为“administrator”或某超级用户。同理再添加一个名称为“defaultpassword”的字串值键，并将其值改为你的登录密码，最后再双击“autoadminlogon”数值的名称，将这个数据类型为reg_sz的键值改为1。退出注册表编辑器，重新启动就可大功告成。如果你某次突然不想让系统自动以“administrator”的身份登录的话，只要在启动时同时按住shift键就可以了!
开始\运行
Regedit
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
&#8220;DefaultUserName&#8221;=&#8221;Administrator&#8221;
&#8220;DefaultDomainName&#8221;=&#8221;domain&#8221;
&#8220;PowerdownAfterShutdown&#8221;=&#8221;1&#8243;
&#8220;DefaultPassWord&#8221;=&#8221;XXXX&#8221;
&#8220;AutoAdminLogon&#8221;=&#8221;1&#8243;
XXXX为你的密码
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/768/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>居家实用宝典-最全各种面料的洗涤方法</title>
		<link>http://www.chentaoqian.com/archives/765</link>
		<comments>http://www.chentaoqian.com/archives/765#comments</comments>
		<pubDate>Sun, 25 Jul 2010 05:24:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[生活知识]]></category>
		<category><![CDATA[实用]]></category>
		<category><![CDATA[居家]]></category>
		<category><![CDATA[洗涤]]></category>
		<category><![CDATA[面料]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=765</guid>
		<description><![CDATA[是否为衣裤的洗涤方式发愁，是否怕把昂贵的衣服洗坏了，看看我搜集的最全洗涤方法，各面料都要用它自己的洗涤方式，才能保持衣物长久哦。
一.毛(WOOL)
特性
1.蛋白质纤维
2.光泽柔和自然,手感柔软,比棉、麻、丝等其它天然纤维更有弹性，抗折皱性好，熨烫后有较好的褶皱成型和保型性
3.保暧性好，吸汗及透气性较好，穿着舒适
洗涤方法
1.不耐碱，应选用中性洗涤剂，最好采用羊毛专用洗涤剂
2.冷水短时间浸泡，洗涤温度不超过40度
3.采用挤压洗，忌拧绞，挤压除水，平摊阴干或折半悬挂阴干，勿曝晒
4.湿态整形或半干时整形，能除皱纹
5.机洗勿用波轮洗衣机，建议先用滚筒洗衣机，应选择轻洗档
6.高档全毛料或毛与其他纤维混纺的衣物，建议干洗
7.夹克类及西装类应干洗，不宜水洗
8.切忌用搓衣板搓洗
保养性
1.忌与尖锐、粗糙的物品和强碱性物品接触
2.择阴凉通风处凉晒，干透后方可收藏，并应放置适量的防霉防蛀药剂
3.收藏期中应定期打开箱柜，通风透气，保持干燥
4.高温潮湿季节，应晾晒几次，防止霉变
5.切忌拧绞
二.丝(SILK)
特性
1.蛋白质纤维
2.富有光泽，有独特“丝鸣感”，手感滑爽，穿着舒适，高雅华贵
3.强度比毛高，但抗皱性差
4.比棉、毛耐热，但耐光性差
5.对无机酸较稳定，对碱反映敏感
洗涤方法
1.忌碱性洗涤剂，应选用中性或丝绸专用洗涤剂
2.冷水或温水洗涤，不宜长时间浸泡
3.轻柔洗涤，忌拧绞，忌硬板刷刷洗
4.应阴干，忌日晒，不宜烘干
5.部分丝织物应干洗
6.深色丝织物应清水漂洗，以免褪色
7.与其它衣物分开洗涤
8.切忌拧绞
保养方法
1.暴晒，以免降低坚牢度及引起褪色泛黄，色泽变劣
2.忌与粗糙或酸、碱物质接触
3.收藏前应洗净、熨烫、凉干，最好叠放，用布包好
4.不宜放置樟脑丸，否则白色衣物会泛黄
5.熨烫时垫布，避免极光
三.**人造纤维（粘胶、醋酯、铜氨、富强）**
天丝(Tencel)
特性
1、再生纤维，与棉麻的主要成分相同，均为纤维素
2.色彩鲜艳，手感柔软，穿着舒适
3.抗皱性差，不挺括
4.缩水率大，湿态强度比干态强度下降40％左右
5.天丝（Tencel)湿态强力只下降15％
洗涤方法
1.棉织物洗涤要求基本相同
2.洗涤时应比棉织物要轻柔，忌用力搓洗，忌硬刷刷洗，忌用力拧绞，应折叠挤净水份
3.随选随浸，水温忌超过45度
4.忌暴晒，应阴干
5.与其它衣物分开洗涤
保养性
同棉织物基本相同
涤纶（dacron)
特性
1.坚牢耐用，搞皱挺括，尺寸稳定性好
2.吸水性差，易洗快干，免烫
3.易产生静电，易起毛球
4.穿着不舒适
洗涤方法
1.可用各种洗衣粉及肥皂洗涤
2.洗涤温度在45摄氏度以下
3.可机洗，可手洗，可干洗
4.可用毛刷刷洗
保养性
1.不可曝晒
2.不宜烘干
四.锦纶
又称尼龙（nylon)
特性
1.弹性好，耐磨
2.不耐晒，易老化
洗涤方法
1.选用一般合成洗涤剂，水温不宜超过45度2.可轻拧绞，忌暴晒和烘干
3.低温蒸汽熨烫
4.洗后通风阴干
保养性
1.熨烫温度不能超过110度
2.熨烫时一定要打蒸汽，不能干烫
五.脯纶（合成）
特性
1.耐晒
2.重量轻，保暧，手感强，悬垂性很差
洗涤方法
1.轻揉劲搓，轻拧去水
2.纯脯纶可以晾晒，混纺织物应阴干
六.氨纶(莱卡）
特性
1、弹性很好，有弹性纤维之称 水洗、干洗均可 低温蒸汽熨烫
全棉丝光。
2、用高支棉织物经高浓度烧碱处理，再用优质柔软剂处理，有真丝般光泽，穿着清爽，光滑而舒适
3、单丝光即一次光处理，双丝光即两次丝光处理，效果更好
洗涤方法：
七.同棉织物 同棉织物
毛涤织物
特性：
1.集合毛和涤纶的优点
2.质地轻薄、折皱回复性好，褶皱持久，尺寸稳定，易洗快干，坚牢耐用
3.不宜虫蛀，但手感不及全毛柔滑
洗涤方法：
1.应选用中性洗涤剂或专用羊毛洗涤剂，忌碱性洗涤剂
2.轻揉劲洗，不宜拧绞，应阴干
3.高档衣服建议干洗
4.西装、茄克装应干洗，不宜水洗
防虫蛀，防霉
八.T/R面料
特性：
1.属于合成纤维、人造纤维涤粘混纺织物，有棉型、毛型等
2.平整光洁，色彩鲜艳，手感弹性好，吸湿性好，坚固抗皱，尺寸稳定
3.良好透气性和抗熔孔性，降低了织物起毛、起球和静电现象，但免烫性差
洗涤方法：
1.水温在40度以下
2.中温蒸汽熨烫
3.可以干洗
4.适宜阴干
5.不可拧干纯棉类
1、脏棉料不易存放太久，会发霉，若轻者可用氨水去霉，洗涤时可加一些氧化漂白剂。
2、洗涤纯棉平绒、灯芯绒衣物时，先把衣物用洗衣机进行冷浸和预洗，然后用肥皂对污染重点部位进行刷洗。刷洗时用力要轻，以防使局部脱色或使平绒倒伏、灯芯绒脱绒。衣物经刷洗后可用洗衣粉在常温下机洗15分钟，最后用温水和冷水漂净，脱水晾晒。
牛仔类
1、牛仔裤洗涤最易褪色。如把新买来的牛仔裤放入盐水浸泡10小时左右，以后再洗时就不会褪色了。
2、牛仔裤若出现白块，需向顾客问清白块来源，若是沾上酸变白，洗涤完毕后会出现破洞。
3、由于牛仔裤遇水后发硬，这就给洗涤造成一定的困难。洗涤这类服装时，首先要对其进行冷浸，然后再用肥皂进行刷洗。经刷洗后再用洗衣粉进行机洗。洗涤温度最佳为50℃，洗涤时间为15分钟。最后用温水和冷水漂净、脱水晾干。
皮装类
1、由于牛皮、羊皮、猪皮的主要成分是蛋白质，所以都容易受潮、起霉、生虫。为此，在穿着皮装时，要避免接触油污、酸性和碱性等物质。
2、皮革服装最好经常穿，并常用细绒布揩擦。如果遇到雨淋受潮或发生霉变，可用软干布擦去水渍或霉点。但千万不要用水和汽油涂擦，因为水能使皮革变硬，汽油能使皮革的油分挥发而干裂。
3、皮革服装不穿时，最好用衣架挂起来；当然平放也可以，但要放在其他衣物的上面，免得将其压瘪起皱，影响美观。
4、皮革服装在收藏前要晾一下，不能曝晒，挂在阴凉干燥处通风即可。为使皮革服装在较长时间内保持色泽美观，在收藏前可在皮面上涂一层牛奶或甘油，这样就能长期存放而不变色。
丝绸类
1、丝缎服装耐碱性能差，应选用中性皂片或高级洗涤剂，用热水溶化成皂液。等水微温时将衣物浸透，再轻搓轻揉，切忌用硬刷刷洗或放在洗衣板上搓擦。洗完后用清水洗去皂液或漂清，不要拧绞或曝晒，一般带水挂在衣架上并放置阴凉处晾干为宜。
2、如果要使丝绸织物色泽鲜艳，绸面光亮，可在冲洗时滴几滴醋，能保持鲜艳度。
3、如果熨烫丝绸服装，可在晾到七八成干时，用白布衬在绸面熨烫，但熨斗温度不可高于130℃，否则丝绸服装会损伤或“脆化”，影响穿着寿命。熨烫时切忌喷水，避免出现水渍痕，影响外观。
4、真丝衣服色牢度极差，在太阳暴晒后，一经洗涤就退色发白，去渍时极易出现白块，在收衣时应先向客户阐明。若出现白块，白块处理：把衣物放入3%冰醋溶液中匀染，匀染时要用手不停搅动衣服，或用白醋，真丝衣服禁用肥皂或洗衣粉、洗涤灵洗涤，应用中性洗涤剂（丝毛净）。
合成化纤类
1、的确良衬衫的洗涤
的确良衬衫的面料是由涤纶和棉混纺织成的，它的强度比棉高几倍，耐磨耐穿，受到人们欢迎。洗涤的确良衬衫，温度为30℃~40℃，用肥皂和洗衣粉均可，可用揉搓法，也可用洗衣机、但对污染的重点部位要用刷洗法处理，漂洗要干净，可用脱水筒脱水。
2、涤纶绸服装的洗涤
涤纶绸表面光滑，抗皱性良好。用涤纶绸制作的夏装，笔挺流畅，别有风韵。涤纶绸组织结构紧密，污垢不易渗透到纤维内部，洗涤去污比较容易。洗涤时，对洗涤剂要求不严格，用一般的肥皂，洗衣粉就可以，洗涤温度30~40℃最佳，用揉搓法、刷洗法以及洗衣机洗涤都可以。但在洗涤前要将个别污渍先除掉，这样才能够取得良好的洗涤效果。
3、毛涤服装的洗涤
毛涤织物是羊毛与涤纶纤维的混纺织物。它具有纯羊毛织物的天然光泽，又具有涤纶织物抗皱性的特点，是当代服装中的主要面料。毛涤服装吸水性相对较差，遇水后不易变形。洗涤毛涤服装，应选用优质中性洗涤剂。洗涤温度在30~40℃之间。洗涤时间可稍长一些，一般为5分钟，但也要根据辅料的性质而定。洗涤时，可先用洗衣机冷浸预洗2~3分钟，然后再对重点部位进行刷洗，最后再用洗衣机洗涤。漂洗要干净彻底，漂洗后要进行浸酸处理，脱水后要整形，然后挂在通风处阴干。
4、腈纶棉服装的洗涤
腈纶棉又叫膨胶棉，是用腈纶加工制成的絮片。用腈纶棉制成的冬装，轻松保暖，平坦服贴，穿着舒适方便。洗涤这种服装，要根据服装面料的品种、性能、特点、颜色，选用适合的方法进行洗涤。一般都先用洗涤剂机洗5~10分钟，然后对衣服上严重污染部位进行刷洗，刷洗干净后即可漂洗，漂洗要漂净，脱水后要整形，然后挂起阴干。
5、羽绒服装的洗涤
羽绒服装的面料，多数选用尼龙绸或涤棉织物。把衣服里、面都刷净后再放入洗衣机洗涤3~5分钟，洗净后用温水漂洗两次，用冷水漂洗一次，再用醋酸进行浸酸处理，用脱水桶脱水。脱水后，将衣服抖散、拉平、挂起阴干。衣服晾干后再用藤棍敲打，使鸭绒蓬松。
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/765/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java语音引擎-实现人声说话</title>
		<link>http://www.chentaoqian.com/archives/763</link>
		<comments>http://www.chentaoqian.com/archives/763#comments</comments>
		<pubDate>Sat, 17 Jul 2010 15:23:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[引擎]]></category>
		<category><![CDATA[语音]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=763</guid>
		<description><![CDATA[为应用程序加上语音能力有什么好处呢？粗略地讲，是为了趣味，它适合所有注重趣味的
应用，比如游戏。当然，从更严肃的角度来讲，它还涉及到应用的可用性问题。注意，这
里我考虑的不仅是可视化界面固有的不足，而且还有这样一些情形：一些时候，让双眼离
开当前的工作很不方便，甚至是不合法的。比如，假设有一个带语音功能的浏览器，你就
可以在外出散步或开车上班的同时，用听的方式浏览自己喜爱的网站。
从目前来看，邮件阅读器或许是语音技术更实际的应用，在JavaMail API的帮助下，
这一切已经可能。邮件阅读器可以定期地检查收件箱，然后用语音“You have new mail,
would you like me to read it to you?”引起你的注意。按照类似的思路，我们还可以
考虑一个带语音功能的提醒器，把它连接到一个日历应用：它会及时地提醒你“Don&#8217;t
forget your meeting with the boss in 10 minutes!”。
也许你已经被这些主意吸引，或者有了自己更好的主意，现在让我们继续。首先我将
介绍如何启用本文提供的语音引擎，这样，如果你认为语音引擎的实现细节过于复杂，就
可以直接使用它而忽略其实现细节。
一、试用语音引擎
要使用这个语音引擎，你必须在CLASSPATH中加入本文提供的javatalk.jar文件，然后从
命令行运行（或者从Java程序调用）com.lotontech.speech.Talker类。如果从命令行运
行，则命令为：
java com.lotontech.speech.Talker &#8220;h&#124;e&#124;l&#124;oo&#8221;
如果从Java程序调用，则代码为：
com.lotontech.speech.Talker talker=new com.lotontech.speech.Talker();
talker.sayPhoneWord(&#8220;h&#124;e&#124;l&#124;oo&#8221;);
现在，对于在命令行上（或者调用sayPhoneWord()方法时）提供的“h&#124;e&#124;l&#124;oo”字符串，你
或许有所不解。下面我就来解释一下。
语音引擎的工作原理是把细小的声音样本连接起来，每一个样本都是人的语言发音（英
语）的一个最小单位。这些声音样本称为音素（allophone）。每一个因素对应一个、二
个或者三个字母。从前面“hello”的语音表示可以看出，一些字母组合的发音显而易见，
还有一些却不是很明显：
h &#8212; 读音显而易见
e &#8212; 读音显而易见
l &#8212; 读音显而易见，但注意两个“l”被简缩成了一个“l”。
OO &#8212; 应该读作“hello”中的读音，不应读作“bot”、“too”中的读音。
下面是一个有效音素的清单：
a ： 如cat
b ： 如cab
c ： 如cat
d ： 如dot
e ： 如bet
f ： 如frog
g ： 如frog
h ： 如hog
i ： 如pig
j ： 如jig
k ： 如keg
l [...]]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/763/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>轻松解决&#8221;IE快捷方式无法删除&#8221;</title>
		<link>http://www.chentaoqian.com/archives/760</link>
		<comments>http://www.chentaoqian.com/archives/760#comments</comments>
		<pubDate>Thu, 15 Jul 2010 15:46:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[ie]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=760</guid>
		<description><![CDATA[今天去&#8221;绿色软件联盟&#8221;下了个&#8221;winavi&#8221;转换软件，没想到刚解压出来，电脑就中招了 T_T ，一直以为绿盟的软件挺好的，没想到也有毒！后悔了！
中招后发现IE的首页被篡改，而且桌面上多了一个IE快捷方式，打开后直接跳转到http://www.91832.com(万恶的病毒作者，我恨你!). 本以为这快捷方式也没多么麻烦，谁知道这个快捷方式怎么也删不掉，右键点击后只出现“打开首页，创建快捷方式，属性”这三项，没有“删除”这项，这个方法失败。直接按&#8221;Delete&#8221;键，无效！按&#8221;Shift&#8221;+&#8221;Delete&#8221;，同样无效。无奈，马上杀毒，打开小红伞，360，在正常模式，安全模式下全杀一遍，其它病毒都杀了，就这个快捷方式还在，抓狂!!! 用360的IE修复，啊！还是没搞定，绝望ing。
上网搜索了一番，发现了一个很简单的方法！哈哈，没想到这么简单，得来全不费功夫！只要用Windows自带的桌面清理向导，把那个快捷方式清理掉就OK了！
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/760/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java编码转换-内存中字符串编码转换实例</title>
		<link>http://www.chentaoqian.com/archives/749</link>
		<comments>http://www.chentaoqian.com/archives/749#comments</comments>
		<pubDate>Sun, 11 Jul 2010 02:13:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[decode]]></category>
		<category><![CDATA[encode]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[编码]]></category>
		<category><![CDATA[编码转换]]></category>
		<category><![CDATA[解码]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=749</guid>
		<description><![CDATA[Java编程时会遇到很多字符集编码转换的问题，当读取的字符在内存中如何执行编码转换？下面给出一个实例


import java.nio.ByteBuffer;
import java.nio.charset.Charset;

public class MainClass {
 public static void main(String[] argv) throws Exception {
 String input = &#8221;\u00bfMa\u00f1ana?&#8221;;

 // The list of charsets to encode with
 String[] charsetNames = { &#8221;US-ASCII&#8221;, &#8221;ISO-8859-1&#8243;, &#8221;UTF-8&#8243;, &#8221;UTF-16BE&#8221;, &#8221;UTF-16LE&#8221;, &#8221;UTF-16&#8243;,
 // &#8221;X-ROT13&#8243; // This requires META-INF/services
 };
 for (int i = 0; i &#60; charsetNames.length; i++) {
 doEncode(Charset.forName(charsetNames[i]), input);
 }
 }
 private static void doEncode(Charset cs, String input) {
 ByteBuffer bb = cs.encode(input);
 System.out.println(&#8220;Charset: &#8221; + cs.name());
 System.out.println(&#8220;  Input: &#8221; + input);
 System.out.println(&#8220;Encoded: &#8221;);

 for (int i = 0; bb.hasRemaining(); i++) {
 int b = bb.get();
 int ival = ((int) b) &#38; 0xff;
 char c = (char) ival;
 // print index number
 System.out.print(&#8220;  &#8221; + i + &#8221;: &#8221;);
 // print the hex value of the byte
 System.out.print(Integer.toHexString(ival));
 System.out.println(&#8220; (&#8220; + c + &#8221;)&#8221;);
 }
 }
}


java
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/749/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2个区别搞懂web.xml配置Session超时时间</title>
		<link>http://www.chentaoqian.com/archives/751</link>
		<comments>http://www.chentaoqian.com/archives/751#comments</comments>
		<pubDate>Wed, 07 Jul 2010 13:04:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[session]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[会话]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=751</guid>
		<description><![CDATA[为单个Web应用 配置超时时间可以在web.xml中使用&#60;session-config&#62;元素，如
&#60;web-app&#62;

&#60;!&#8211;filter.listener,servlet,and servlet- mapping等元素要在session-config之前&#8211;&#62;
 &#60;session-config&#62;
 &#60;session-timeout&#62;15 &#60;/session-timeout&#62;
 &#60;/session-config&#62;
 &#8230;

&#60;/web-app&#62;
这个时候的“15”单位是分钟！
 
如果在配置Servlet是指定初始化参数决定超时时间，例如下：
&#60;servlet&#62;
 &#60;servlet-name&#62;Example&#60;/servlet-name&#62;
 &#60;servlet-class&#62;exa.mp.le.Example2&#60;/servlet-class&#62;
 &#60;init-param&#62;
 &#60;param-name&#62;timeout&#60;/param-name&#62;
 &#60;param-value&#62;600&#60;/param-value&#62;
 &#60;/init-param&#62;
&#8230;
&#60;/servlet&#62;
这时候的“600”单位是秒钟！
另外，我们要注意HttpSession.getMaxInactiveInterval()方法返回的是与秒为单位的；
session.setMaxInactiveInterval(int seconds)方法参数的单位也是秒。
]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/751/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4大类Java应用编码转换的详细过程</title>
		<link>http://www.chentaoqian.com/archives/747</link>
		<comments>http://www.chentaoqian.com/archives/747#comments</comments>
		<pubDate>Wed, 07 Jul 2010 13:03:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[编码]]></category>
		<category><![CDATA[编码转换]]></category>

		<guid isPermaLink="false">http://www.chentaoqian.com/?p=747</guid>
		<description><![CDATA[常见的JAVA程序包括以下类别：
*直接在console上运行的类(包括可视化界面的类)
*JSP代码类（注：JSP是Servlets类的变型）
*Servelets类
*EJB类
*其它不可以直接运行的支持类
这些类文件中，都有可能含有中文字符串，并且常用前三类JAVA程序和用户直接交互，用于输出和输入字符，如：在JSP和Servlet中得到客户端送来的字符，这些字符也包括中文字符。无论这些JAVA类的作用如何，这些JAVA程序的生命周期都是这样的：
*编程人员在一定的操作系统上选择一个合适的编辑软件来实现源程序代码并以.java扩展名保存在操作系统中，例如我们在中文win2k中用记事本编辑一个java源程序；
*编程人员用JDK中的javac.exe来编译这些源代码，形成.class类(JSP文件是由容器调用JDK来编译的)；
*直接运行这些类或将这些类布署到WEB容器中去运行，并输出结果。
那么，在这些过程中，JDK和JVM是如何将这些文件如何编码和解码并运行的呢？
这里，以中文win2k操作系统为例说明JAVA类是如何来编码和被解码的。
第 一步，我们在中文win2k中用编辑软件如记事本编写一个Java源程序文件(包括以 上五类JAVA程序)，程序文件在保存时默认采用了操作系统默认支持GBK编码格式(操作系统默认支持的格式为file.encoding格式)形成了一 个.java文件，也即，java程序在被编译前，我们的JAVA源程序文件是采用操作系统默认支持的file.encoding编码格式保存的， java源程序中含有中文信息字符和英文程序代码；要查看系统的file.encoding参数，可以用以下代码：
public class ShowSystemDefaultEncoding {
public static void main(String[] args) {
String encoding = System.getProperty(&#8220;file.encoding&#8221;);
System.out.println(encoding);
}}
第 二步，我们用JDK的javac.exe文件编译我们的Java源程序，由于JDK是 国际版的，在编译的时候，如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式，则javac.exe首先获得我们操作系统默认采用 的编码格式，也即在编译java程序时，若我们不指定源程序文件的编码格式，JDK首先获得操作系统的file.encoding参数(它保存的就是操作 系统默认的编码格式，如WIN2k，它的值为GBK)，然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认 的UNICODE格式放入内存中。然后，javac把转换后的unicode格式的文件进行编译成.class类文件，此时.class文件是 UNICODE编码的，它暂放在内存中，紧接着，JDK将此以UNICODE编码的编译后的class文件保存到我们的操作系统中形成我们见到的. class文件。对我们来说，我们最终获得的.class文件是内容以UNICODE编码格式保存的类文件，它内部包含我们源程序中的中文字符串，只不过 此时它己经由file.encoding格式转化为UNICODE格式了。
这 一步中，对于JSP源程序文件是不同的，对于JSP，这个过程是这样的：即WEB容器 调用JSP编译器，JSP编译器先查看JSP文件中是否设置有文件编码格式，如果JSP文件中没有设置JSP文件的编码格式，则JSP编译器调用JDK先 把JSP文件用JVM默认的字符编码格式(也即WEB容器所在的操作系统的默认的file.encoding)转化为临时的Servlet类，然后再把它 编译成UNICODE格式的class类，并保存在临时文件夹中。如：在中文win2k上，WEB容器就把JSP文件从GBK编码格式转化为 UNICODE格式，然后编译成临时保存的Servlet类，以响应用户的请求。
第三步，运行第二步编译出来的类，分为三种情况：
A、 直接在console上运行的类
B、 EJB类和不可以直接运行的支持类(如JavaBean类)
C、 JSP代码和Servlet类
D、 JAVA程序和数据库之间
下面分这四种情况来看。
A、直接在console上运行的类
这 种情况，运行该类首先需要JVM支持，即操作系统中必须安装有JRE。运行过程是这样 的：首先java启动JVM，此时JVM读出操作系统中保存的class文件并把内容读入内存中，此时内存中为UNICODE格式的class类，然后 JVM运行它，如果此时此类需要接收用户输入，则类会默认用file.encoding编码格式对用户输入的串进行编码并转化为unicode保存入内存 （用户可以设置输入流的编码格式）。程序运行后，产生的字符串（UNICODE编码的）再回交给JVM，最后JRE把此字符串再转化为 file.encoding格式(用户可以设置输出流的编码格式)传递给操作系统显示接口并输出到界面上。
以上每一步的转化都需要正确的编码格式转化，才能最终不出现乱码现象。
B、EJB类和不可以直接运行的支持类(如JavaBean类)
由 于EJB类和不可以直接运行的支持类，它们一般不与用户直接交互输入和输出，它们常常 与其它的类进行交互输入和输出，所以它们在第二步被编译后，就形成了内容是UNICODE编码的类保存在操作系统中了，以后只要它与其它的类之间的交互在 参数传递过程中没有丢失，则它就会正确的运行。
C、JSP代码和Servlet类
经过第二步后，JSP文件也被转化为Servlets类文件，只不过它不像标准的Servlets一校存在于classes目录中，它存在于WEB容器的临时目录中，故这一步中我们也把它做为Servlets来看。
对 于Servlets，客户端请求它时，WEB容器调用它的JVM来运行 Servlet，首先，JVM把Servlet的class类从系统中读出并装入内存中，内存中是以UNICODE编码的Servlet类的代码，然后 JVM在内存中运行该Servlet类，如果Servlet在运行的过程中，需要接受从客户端传来的字符如：表单输入的值和URL中传入的值，此时如果程 序中没有设定接受参数时采用的编码格式，则WEB容器会默认采用ISO-8859-1编码格式来接受传入的值并在JVM中转化为UNICODE格式的保存 在WEB容器的内存中。Servlet运行后生成输出，输出的字符串是UNICODE格式的，紧接着，容器将Servlet运行产生的UNICODE格式 的串（如html语法，用户输出的串等）直接发送到客户端浏览器上并输出给用户，如果此时指定了发送时输出的编码格式，则按指定的编码格式输出到浏览器 上，如果没有指定，则默认按ISO-8859-1编码发送到客户的浏览器上。
D、Java程序和数据库之间
对 于几乎所有数据库的JDBC驱动程序，默认的在JAVA程序和数据库之间传递数据都是 以ISO-8859-1为默认编码格式的，所以，我们的程序在向数据库内存储包含中文的数据时，JDBC首先是把程序内部的UNICODE编码格式的数据 转化为ISO-8859-1的格式，然后传递到数据库中，在数据库保存数据时，它默认即以ISO-8859-1保存，所以，这是为什么我们常常在数据库中 读出的中文数据是乱码。
3、分析常见的JAVA中文问题几个必须清楚的原则
首先，经过上面的详细分析，我们可以清晰地看到，任何JAVA程序的生命期中，其编码转换的关键过程是在于：最初编译成class文件的转码和最终向用户输出的转码过程。
其次，我们必须了解JAVA在编译时支持的、常用的编码格式有以下几种：
*ISO-8859-1，8-bit, 同8859_1,ISO-8859-1,ISO_8859_1等编码
*Cp1252，美国英语编码，同ANSI标准编码
*UTF-8，同unicode编码
*GB2312，同gb2312-80,gb2312-1980等编码
*GBK , 同MS936，它是gb2312的扩充
及其它的编码，如韩文、日文、繁体中文等。同时，我们要注意这些编码间的兼容关体系如下：
unicode和UTF-8编码是一一对应的关系。GB2312可以认为是GBK的子集，即GBK编码是在gb2312上扩展来的。同时，GBK编码包含了20902个汉字，编码范围为：0&#215;8140-0xfefe，所有的字符可以一一对应到UNICODE2.0中来。
再 [...]]]></description>
		<wfw:commentRss>http://www.chentaoqian.com/archives/747/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
