﻿<?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-淡蓝色的轨迹……</title><link>http://www.blogjava.net/snoics/</link><description /><language>zh-cn</language><lastBuildDate>Wed, 29 Apr 2026 01:29:30 GMT</lastBuildDate><pubDate>Wed, 29 Apr 2026 01:29:30 GMT</pubDate><ttl>60</ttl><item><title>解决Window环境下启动Hadoop时出现的 java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName 异常</title><link>http://www.blogjava.net/snoics/archive/2010/09/29/333408.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Wed, 29 Sep 2010 09:03:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2010/09/29/333408.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/333408.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2010/09/29/333408.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/333408.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/333408.html</trackback:ping><description><![CDATA[在Window下启动Hadoop-0.21.0版本时，会出现下面这样的错误提示：<br />
<br />
<div style="background-color: rgb(238, 238, 238); font-size: 13px; border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; width: 98%;"><span style="color: rgb(0, 128, 128);">&nbsp;1</span>&nbsp;<span style="color: rgb(0, 0, 0);">java.lang.NoClassDefFoundError:&nbsp;org</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">apache</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">hadoop</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">util</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">PlatformName<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;2</span>&nbsp;<span style="color: rgb(0, 0, 0);">Caused&nbsp;by:&nbsp;java.lang.ClassNotFoundException:&nbsp;org.apache.hadoop.util.PlatformName<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;3</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;4</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;java.net.URLClassLoader$</span><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">.run(URLClassLoader.java:</span><span style="color: rgb(0, 0, 0);">202</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;5</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;java.security.AccessController.doPrivileged(Native&nbsp;Method)<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;6</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;java.net.URLClassLoader.findClass(URLClassLoader.java:</span><span style="color: rgb(0, 0, 0);">190</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;7</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;java.lang.ClassLoader.loadClass(ClassLoader.java:</span><span style="color: rgb(0, 0, 0);">307</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;8</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:</span><span style="color: rgb(0, 0, 0);">301</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;9</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;java.lang.ClassLoader.loadClass(ClassLoader.java:</span><span style="color: rgb(0, 0, 0);">248</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">10</span>&nbsp;<span style="color: rgb(0, 0, 0);">Could&nbsp;not&nbsp;find&nbsp;the&nbsp;main&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">:&nbsp;org.apache.hadoop.util.PlatformName.&nbsp;&nbsp;Program&nbsp;wil<br />
</span><span style="color: rgb(0, 128, 128);">11</span>&nbsp;<span style="color: rgb(0, 0, 0);">l&nbsp;exit.</span></div>
<br />
经过不断的查找原因和尝试，终于有了解决这个错误的办法，只需要将${HADOOP_HOME}/bin/hadoop-config.sh文件中的第190行的一下的内容<br />
<br />
<div style="background-color: rgb(238, 238, 238); font-size: 13px; border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; width: 98%;"><span style="color: rgb(0, 0, 0);">JAVA_PLATFORM</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">`CLASSPATH</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">${CLASSPATH}&nbsp;${JAVA}&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">Xmx32m&nbsp;${HADOOP_JAVA_PLATFORM_OPTS}&nbsp;org.apache.hadoop.util.PlatformName&nbsp;</span><span style="color: rgb(0, 0, 0);">|</span><span style="color: rgb(0, 0, 0);">&nbsp;sed&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">e&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">s/&nbsp;/_/g</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">`</span></div>
<br />
<br />
修改成以下的内容即可<br />
<br />
<div style="background-color: rgb(238, 238, 238); font-size: 13px; border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; width: 98%;"><span style="color: rgb(0, 0, 0);">JAVA_PLATFORM</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">`CLASSPATH</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">${CLASSPATH}&nbsp;${JAVA}&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">Xmx32m&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">classpath&nbsp;${HADOOP_COMMON_HOME}</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">hadoop</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">common</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">0.21</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">.jar&nbsp;org.apache.hadoop.util.PlatformName&nbsp;</span><span style="color: rgb(0, 0, 0);">|</span><span style="color: rgb(0, 0, 0);">&nbsp;sed&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">e&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">s/&nbsp;/_/g</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">`</span></div>
<br />
<br />
<img src ="http://www.blogjava.net/snoics/aggbug/333408.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2010-09-29 17:03 <a href="http://www.blogjava.net/snoics/archive/2010/09/29/333408.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>基于Lucene的搜索框架 snoics-retrieval-1.01 版本更新</title><link>http://www.blogjava.net/snoics/archive/2010/09/28/333254.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Tue, 28 Sep 2010 08:33:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2010/09/28/333254.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/333254.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2010/09/28/333254.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/333254.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/333254.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 下载地址：<a target="_blank" title="http://code.google.com/p/snoics-retrieval/" href="http://code.google.com/p/snoics-retrieval/">http://code.google.com/p/snoics-retrieval/</a><br />
<br />
&nbsp;&nbsp;&nbsp; 版本更新说明<br />
<br />
<p class="MsoListParagraph" style="margin-left: 21pt; text-indent: 0cm;"><span lang="EN-US">V1.01</span><span style="font-family: 宋体;">：</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>1</span><span style="font-family: 宋体;">、提高创建索引的效率</span></p>
<p class="MsoListParagraph" style="margin-left: 21pt; text-indent: 0cm;"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>2</span><span style="font-family: 宋体;">、通过对象池管理</span><span lang="EN-US">IndexWriter</span><span style="font-family: 宋体;">和</span><span lang="EN-US">IndexReader</span><span style="font-family: 宋体;">对象</span></p>
<p class="MsoListParagraph" style="margin-left: 21pt; text-indent: 0cm;"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>3</span><span style="font-family: 宋体;">、修正若干</span><span lang="EN-US">BUG</span></p>
<p class="MsoListParagraph" style="margin-left: 21pt; text-indent: 0cm;"><span lang="EN-US">V1.0</span><span style="font-family: 宋体;">：</span></p>
<p class="MsoListParagraph" style="margin-left: 21pt; text-indent: 0cm;"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">初始版本</span></p>
<span style="color: red;"><br />
<br />
</span><strong><span style="font-size: 14pt;">
</span></strong>
<p style="text-indent: 21pt;" class="MsoNormal"><span style="font-family: 宋体;">基于</span>Lucene<span style="font-family: 宋体;">的全文检索框架，提供快速方便的索引创建及查询方式，并提供扩展功能对框架进行扩展。<br />
<br />
<span style="font-family: 宋体;">&nbsp;&nbsp;&nbsp; 项目地址：</span><a href="http://code.google.com/p/snoics-retrieval/">http://code.google.com/p/snoics-retrieval/</a><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span></p>
<p style="text-indent: 0cm; margin-left: 0cm;" class="MsoListParagraph"><strong><span style="font-family: 宋体; font-size: 12pt;">&nbsp;&nbsp; 环境要求</span></strong></p>
<p style="text-indent: 21pt; margin-left: 21pt;" class="MsoNormal">Java1.5+</p>
<p style="text-indent: 21pt; margin-left: 21pt;" class="MsoNormal">Lucene 3.0+</p>
<p style="text-indent: 21pt; margin-left: 21pt;" class="MsoNormal"><br />
</p>
<p style="text-indent: 21pt; margin-left: 21pt;" class="MsoNormal"><br />
</p>
<img src ="http://www.blogjava.net/snoics/aggbug/333254.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2010-09-28 16:33 <a href="http://www.blogjava.net/snoics/archive/2010/09/28/333254.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>基于Lucene的搜索框架</title><link>http://www.blogjava.net/snoics/archive/2010/08/18/329220.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Wed, 18 Aug 2010 07:00:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2010/08/18/329220.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/329220.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2010/08/18/329220.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/329220.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/329220.html</trackback:ping><description><![CDATA[<p><br />
<span style="color: red">做了一些小的修改和调整</span><strong><span style="font-size: 14pt"><br />
</span></strong></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体">基于</span>Lucene<span style="font-family: 宋体">的全文检索框架，提供快速方便的索引创建及查询方式，并提供扩展功能对框架进行扩展。<br />
<br />
<span style="font-family: 宋体">&nbsp;&nbsp;&nbsp; 项目地址：</span><a href="http://code.google.com/p/snoics-retrieval/">http://code.google.com/p/snoics-retrieval/</a><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span></p>
<p style="text-indent: 0cm; margin-left: 0cm" class="MsoListParagraph"><strong><span style="font-family: 宋体; font-size: 12pt">环境要求</span></strong></p>
<p style="text-indent: 21pt; margin-left: 21pt" class="MsoNormal">Java1.5+</p>
<p style="text-indent: 21pt; margin-left: 21pt" class="MsoNormal">Lucene 3.0+</p>
<img src ="http://www.blogjava.net/snoics/aggbug/329220.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2010-08-18 15:00 <a href="http://www.blogjava.net/snoics/archive/2010/08/18/329220.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用逆波兰表达式进行四则运算</title><link>http://www.blogjava.net/snoics/archive/2010/07/29/327498.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Thu, 29 Jul 2010 09:44:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2010/07/29/327498.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/327498.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2010/07/29/327498.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/327498.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/327498.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;对四则运算表达式字符串进行解析后计算出结果，可以使用逆波兰表达式进行处理。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 首先说明一下什是逆波兰表达式：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;逆波兰表达式又叫做后缀表达...&nbsp;&nbsp;<a href='http://www.blogjava.net/snoics/archive/2010/07/29/327498.html'>阅读全文</a><img src ="http://www.blogjava.net/snoics/aggbug/327498.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2010-07-29 17:44 <a href="http://www.blogjava.net/snoics/archive/2010/07/29/327498.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>snoics-retrieval基于Lucene的全文检索框架发布</title><link>http://www.blogjava.net/snoics/archive/2010/07/26/327110.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 26 Jul 2010 00:06:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2010/07/26/327110.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/327110.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2010/07/26/327110.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/327110.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/327110.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 基于自己的兴趣，利用业务时间在Lucene基础上做的一个搜索框架，请大家多多指教。一、&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 介绍 基于Lucene的全文检索框架，提供快速方便的索引创建及查询方式，并提供扩展功能对框架进行扩展。&nbsp;&nbs...&nbsp;&nbsp;<a href='http://www.blogjava.net/snoics/archive/2010/07/26/327110.html'>阅读全文</a><img src ="http://www.blogjava.net/snoics/aggbug/327110.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2010-07-26 08:06 <a href="http://www.blogjava.net/snoics/archive/2010/07/26/327110.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Myeclipse 7 插件安装</title><link>http://www.blogjava.net/snoics/archive/2008/12/15/246399.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 15 Dec 2008 05:41:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2008/12/15/246399.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/246399.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2008/12/15/246399.html#Feedback</comments><slash:comments>13</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/246399.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/246399.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;Myeclipse 7 的插件安装方式与原先的方式完全不一样了，下面以JBossTools-2.1.2.GA插件安装为例进行说明。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;假设<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Myeclipse 7的安装路径为：C:\Genuitec<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JBossTools-2.1.2.GA插件的路径为：&nbsp; C:\eclipse-plugins\plugins\JBossTools-2.1.2.GA-ALL-win32<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;将下面这段代码编译后执行：<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #008080">&nbsp;1</span><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;test;<br />
</span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
</span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.io.File;<br />
</span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.ArrayList;<br />
</span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.List;<br />
</span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
</span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
</span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img id="Codehighlighter1_89_115_Open_Image" onclick="this.style.display='none'; Codehighlighter1_89_115_Open_Text.style.display='none'; Codehighlighter1_89_115_Closed_Image.style.display='inline'; Codehighlighter1_89_115_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_89_115_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_89_115_Closed_Text.style.display='none'; Codehighlighter1_89_115_Open_Image.style.display='inline'; Codehighlighter1_89_115_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_89_115_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**&nbsp;*/</span><span id="Codehighlighter1_89_115_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br />
</span><span style="color: #008080">&nbsp;9</span><span style="color: #008000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;*&nbsp;Descript:&nbsp;<br />
</span><span style="color: #008080">10</span><span style="color: #008000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;*<br />
</span><span style="color: #008080">11</span><span style="color: #008000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;*<br />
</span><span style="color: #008080">12</span><span style="color: #008000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">13</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
</span><span style="color: #008080">14</span><span style="color: #000000"><img id="Codehighlighter1_151_2109_Open_Image" onclick="this.style.display='none'; Codehighlighter1_151_2109_Open_Text.style.display='none'; Codehighlighter1_151_2109_Closed_Image.style.display='inline'; Codehighlighter1_151_2109_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_151_2109_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_151_2109_Closed_Text.style.display='none'; Codehighlighter1_151_2109_Open_Image.style.display='inline'; Codehighlighter1_151_2109_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;CreatePluginsConfig&nbsp;</span><span id="Codehighlighter1_151_2109_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_151_2109_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">15</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;String&nbsp;path;<br />
</span><span style="color: #008080">16</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">17</span><span style="color: #000000"><img id="Codehighlighter1_217_238_Open_Image" onclick="this.style.display='none'; Codehighlighter1_217_238_Open_Text.style.display='none'; Codehighlighter1_217_238_Closed_Image.style.display='inline'; Codehighlighter1_217_238_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_217_238_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_217_238_Closed_Text.style.display='none'; Codehighlighter1_217_238_Open_Image.style.display='inline'; Codehighlighter1_217_238_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;CreatePluginsConfig(String&nbsp;path)</span><span id="Codehighlighter1_217_238_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_217_238_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">18</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.path</span><span style="color: #000000">=</span><span style="color: #000000">path;<br />
</span><span style="color: #008080">19</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">20</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">21</span><span style="color: #000000"><img id="Codehighlighter1_262_1241_Open_Image" onclick="this.style.display='none'; Codehighlighter1_262_1241_Open_Text.style.display='none'; Codehighlighter1_262_1241_Closed_Image.style.display='inline'; Codehighlighter1_262_1241_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_262_1241_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_262_1241_Closed_Text.style.display='none'; Codehighlighter1_262_1241_Open_Image.style.display='inline'; Codehighlighter1_262_1241_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;print()</span><span id="Codehighlighter1_262_1241_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_262_1241_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">22</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&nbsp;list</span><span style="color: #000000">=</span><span style="color: #000000">getFileList(path);<br />
</span><span style="color: #008080">23</span><span style="color: #000000"><img id="Codehighlighter1_311_326_Open_Image" onclick="this.style.display='none'; Codehighlighter1_311_326_Open_Text.style.display='none'; Codehighlighter1_311_326_Closed_Image.style.display='inline'; Codehighlighter1_311_326_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_311_326_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_311_326_Closed_Text.style.display='none'; Codehighlighter1_311_326_Open_Image.style.display='inline'; Codehighlighter1_311_326_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(list</span><span style="color: #000000">==</span><span style="color: #0000ff">null</span><span style="color: #000000">)</span><span id="Codehighlighter1_311_326_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_311_326_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">24</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">;<br />
</span><span style="color: #008080">25</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">26</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">27</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;length</span><span style="color: #000000">=</span><span style="color: #000000">list.size();<br />
</span><span style="color: #008080">28</span><span style="color: #000000"><img id="Codehighlighter1_384_1238_Open_Image" onclick="this.style.display='none'; Codehighlighter1_384_1238_Open_Text.style.display='none'; Codehighlighter1_384_1238_Closed_Image.style.display='inline'; Codehighlighter1_384_1238_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_384_1238_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_384_1238_Closed_Text.style.display='none'; Codehighlighter1_384_1238_Open_Image.style.display='inline'; Codehighlighter1_384_1238_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">length;i</span><span style="color: #000000">++</span><span style="color: #000000">)</span><span id="Codehighlighter1_384_1238_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_384_1238_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">29</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">""</span><span style="color: #000000">;<br />
</span><span style="color: #008080">30</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;thePath</span><span style="color: #000000">=</span><span style="color: #000000">getFormatPath(getString(list.get(i)));<br />
</span><span style="color: #008080">31</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;file</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;File(thePath);<br />
</span><span style="color: #008080">32</span><span style="color: #000000"><img id="Codehighlighter1_521_844_Open_Image" onclick="this.style.display='none'; Codehighlighter1_521_844_Open_Text.style.display='none'; Codehighlighter1_521_844_Closed_Image.style.display='inline'; Codehighlighter1_521_844_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_521_844_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_521_844_Closed_Text.style.display='none'; Codehighlighter1_521_844_Open_Image.style.display='inline'; Codehighlighter1_521_844_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(file.isDirectory())</span><span id="Codehighlighter1_521_844_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_521_844_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">33</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;fileName</span><span style="color: #000000">=</span><span style="color: #000000">file.getName();<br />
</span><span style="color: #008080">34</span><span style="color: #000000"><img id="Codehighlighter1_590_611_Open_Image" onclick="this.style.display='none'; Codehighlighter1_590_611_Open_Text.style.display='none'; Codehighlighter1_590_611_Closed_Image.style.display='inline'; Codehighlighter1_590_611_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_590_611_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_590_611_Closed_Text.style.display='none'; Codehighlighter1_590_611_Open_Image.style.display='inline'; Codehighlighter1_590_611_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(fileName.indexOf(</span><span style="color: #000000">"</span><span style="color: #000000">_</span><span style="color: #000000">"</span><span style="color: #000000">)</span><span style="color: #000000">&lt;</span><span style="color: #000000">0</span><span style="color: #000000">)</span><span id="Codehighlighter1_590_611_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_590_611_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">35</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">continue</span><span style="color: #000000">;<br />
</span><span style="color: #008080">36</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">37</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;filenames</span><span style="color: #000000">=</span><span style="color: #000000">fileName.split(</span><span style="color: #000000">"</span><span style="color: #000000">_</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">38</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;filename1</span><span style="color: #000000">=</span><span style="color: #000000">filenames[</span><span style="color: #000000">0</span><span style="color: #000000">];<br />
</span><span style="color: #008080">39</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;filename2</span><span style="color: #000000">=</span><span style="color: #000000">filenames[</span><span style="color: #000000">1</span><span style="color: #000000">];<br />
</span><span style="color: #008080">40</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">filename1</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">filename2</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">,file:/</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">path</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">\\</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">fileName</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">\\,4,false</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
</span><span style="color: #008080">41</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(result);<br />
</span><span style="color: #008080">42</span><span style="color: #000000"><img id="Codehighlighter1_867_1230_Open_Image" onclick="this.style.display='none'; Codehighlighter1_867_1230_Open_Text.style.display='none'; Codehighlighter1_867_1230_Closed_Image.style.display='inline'; Codehighlighter1_867_1230_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_867_1230_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_867_1230_Closed_Text.style.display='none'; Codehighlighter1_867_1230_Open_Image.style.display='inline'; Codehighlighter1_867_1230_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(file.isFile())</span><span id="Codehighlighter1_867_1230_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_867_1230_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">43</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;fileName</span><span style="color: #000000">=</span><span style="color: #000000">file.getName();<br />
</span><span style="color: #008080">44</span><span style="color: #000000"><img id="Codehighlighter1_936_957_Open_Image" onclick="this.style.display='none'; Codehighlighter1_936_957_Open_Text.style.display='none'; Codehighlighter1_936_957_Closed_Image.style.display='inline'; Codehighlighter1_936_957_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_936_957_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_936_957_Closed_Text.style.display='none'; Codehighlighter1_936_957_Open_Image.style.display='inline'; Codehighlighter1_936_957_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(fileName.indexOf(</span><span style="color: #000000">"</span><span style="color: #000000">_</span><span style="color: #000000">"</span><span style="color: #000000">)</span><span style="color: #000000">&lt;</span><span style="color: #000000">0</span><span style="color: #000000">)</span><span id="Codehighlighter1_936_957_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_936_957_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">45</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">continue</span><span style="color: #000000">;<br />
</span><span style="color: #008080">46</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">47</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;filenames</span><span style="color: #000000">=</span><span style="color: #000000">fileName.split(</span><span style="color: #000000">"</span><span style="color: #000000">_</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">48</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;filename1</span><span style="color: #000000">=</span><span style="color: #000000">filenames[</span><span style="color: #000000">0</span><span style="color: #000000">];<br />
</span><span style="color: #008080">49</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;filename2</span><span style="color: #000000">=</span><span style="color: #000000">filenames[</span><span style="color: #000000">1</span><span style="color: #000000">].substring(</span><span style="color: #000000">0</span><span style="color: #000000">,&nbsp;filenames[</span><span style="color: #000000">1</span><span style="color: #000000">].lastIndexOf(</span><span style="color: #000000">"</span><span style="color: #000000">.</span><span style="color: #000000">"</span><span style="color: #000000">));<br />
</span><span style="color: #008080">50</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">filename1</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">filename2</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">,file:/</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">path</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">\\</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">fileName</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">,4,false</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
</span><span style="color: #008080">51</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(result);<br />
</span><span style="color: #008080">52</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">53</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">54</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">55</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">56</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">57</span><span style="color: #000000"><img id="Codehighlighter1_1282_1650_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1282_1650_Open_Text.style.display='none'; Codehighlighter1_1282_1650_Closed_Image.style.display='inline'; Codehighlighter1_1282_1650_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1282_1650_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1282_1650_Closed_Text.style.display='none'; Codehighlighter1_1282_1650_Open_Image.style.display='inline'; Codehighlighter1_1282_1650_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;List&nbsp;getFileList(String&nbsp;path)</span><span id="Codehighlighter1_1282_1650_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1282_1650_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">58</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path</span><span style="color: #000000">=</span><span style="color: #000000">getFormatPath(path);<br />
</span><span style="color: #008080">59</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path</span><span style="color: #000000">=</span><span style="color: #000000">path</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">/</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
</span><span style="color: #008080">60</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;filePath</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;File(path);<br />
</span><span style="color: #008080">61</span><span style="color: #000000"><img id="Codehighlighter1_1390_1410_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1390_1410_Open_Text.style.display='none'; Codehighlighter1_1390_1410_Closed_Image.style.display='inline'; Codehighlighter1_1390_1410_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1390_1410_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1390_1410_Closed_Text.style.display='none'; Codehighlighter1_1390_1410_Open_Image.style.display='inline'; Codehighlighter1_1390_1410_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(</span><span style="color: #000000">!</span><span style="color: #000000">filePath.isDirectory())</span><span id="Codehighlighter1_1390_1410_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1390_1410_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">62</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br />
</span><span style="color: #008080">63</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">64</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;filelist</span><span style="color: #000000">=</span><span style="color: #000000">filePath.list();<br />
</span><span style="color: #008080">65</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&nbsp;filelistFilter</span><span style="color: #000000">=</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;ArrayList();<br />
</span><span style="color: #008080">66</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br />
</span><span style="color: #008080">67</span><span style="color: #000000"><img id="Codehighlighter1_1525_1622_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1525_1622_Open_Text.style.display='none'; Codehighlighter1_1525_1622_Closed_Image.style.display='inline'; Codehighlighter1_1525_1622_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1525_1622_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1525_1622_Closed_Text.style.display='none'; Codehighlighter1_1525_1622_Open_Image.style.display='inline'; Codehighlighter1_1525_1622_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">filelist.length;i</span><span style="color: #000000">++</span><span style="color: #000000">)</span><span id="Codehighlighter1_1525_1622_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1525_1622_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">68</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;tempfilename</span><span style="color: #000000">=</span><span style="color: #000000">getFormatPath(path</span><span style="color: #000000">+</span><span style="color: #000000">filelist[i]);<br />
</span><span style="color: #008080">69</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filelistFilter.add(tempfilename);<br />
</span><span style="color: #008080">70</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">71</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;filelistFilter;<br />
</span><span style="color: #008080">72</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">73</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">74</span><span style="color: #000000"><img id="Codehighlighter1_1699_1788_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1699_1788_Open_Text.style.display='none'; Codehighlighter1_1699_1788_Closed_Image.style.display='inline'; Codehighlighter1_1699_1788_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1699_1788_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1699_1788_Closed_Text.style.display='none'; Codehighlighter1_1699_1788_Open_Image.style.display='inline'; Codehighlighter1_1699_1788_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;String&nbsp;getString(Object&nbsp;object)</span><span id="Codehighlighter1_1699_1788_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1699_1788_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">75</span><span style="color: #000000"><img id="Codehighlighter1_1722_1746_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1722_1746_Open_Text.style.display='none'; Codehighlighter1_1722_1746_Closed_Image.style.display='inline'; Codehighlighter1_1722_1746_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1722_1746_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1722_1746_Closed_Text.style.display='none'; Codehighlighter1_1722_1746_Open_Image.style.display='inline'; Codehighlighter1_1722_1746_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(object</span><span style="color: #000000">==</span><span style="color: #0000ff">null</span><span style="color: #000000">)</span><span id="Codehighlighter1_1722_1746_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1722_1746_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">76</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">""</span><span style="color: #000000">;<br />
</span><span style="color: #008080">77</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">78</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;String.valueOf(object);<br />
</span><span style="color: #008080">79</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">80</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">81</span><span style="color: #000000"><img id="Codehighlighter1_1840_1959_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1840_1959_Open_Text.style.display='none'; Codehighlighter1_1840_1959_Closed_Image.style.display='inline'; Codehighlighter1_1840_1959_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1840_1959_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1840_1959_Closed_Text.style.display='none'; Codehighlighter1_1840_1959_Open_Image.style.display='inline'; Codehighlighter1_1840_1959_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;String&nbsp;getFormatPath(String&nbsp;path)&nbsp;</span><span id="Codehighlighter1_1840_1959_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_1840_1959_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">82</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;path.replaceAll(</span><span style="color: #000000">"</span><span style="color: #000000">\\\\</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">/</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">83</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;path.replaceAll(</span><span style="color: #000000">"</span><span style="color: #000000">//</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">/</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">84</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;path;<br />
</span><span style="color: #008080">85</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">86</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #008080">87</span><span style="color: #000000"><img id="Codehighlighter1_2002_2107_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2002_2107_Open_Text.style.display='none'; Codehighlighter1_2002_2107_Closed_Image.style.display='inline'; Codehighlighter1_2002_2107_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2002_2107_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_2002_2107_Closed_Text.style.display='none'; Codehighlighter1_2002_2107_Open_Image.style.display='inline'; Codehighlighter1_2002_2107_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String[]&nbsp;args)</span><span id="Codehighlighter1_2002_2107_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_2002_2107_Open_Text"><span style="color: #000000">{<br />
</span><span style="color: #008080">88</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;CreatePluginsConfig(</span><span style="color: #000000">"</span><span style="color: #000000">C:\\eclipse-plugins\\plugins\\JBossTools-2.1.2.GA-ALL-win32\\eclipse\\plugins</span><span style="color: #000000">"</span><span style="color: #000000">).print();<br />
</span><span style="color: #008080">89</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
</span><span style="color: #008080">90</span><span style="color: #000000"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div>
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;执行完之后，将控制台中打印出的执行结果，直接复制到下面这个文件中：<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;C:\Genuitec\MyEclipse 7.0\configuration\org.eclipse.equinox.simpleconfigurator\bundles.info<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;然后用 -clean 命令重新启动Myeclipse即了完成插件的安装。<br />
&nbsp;&nbsp;&nbsp;&nbsp; 
<img src ="http://www.blogjava.net/snoics/aggbug/246399.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2008-12-15 13:41 <a href="http://www.blogjava.net/snoics/archive/2008/12/15/246399.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>不要重新发明轮子？</title><link>http://www.blogjava.net/snoics/archive/2008/04/24/195521.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Thu, 24 Apr 2008 04:52:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2008/04/24/195521.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/195521.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2008/04/24/195521.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/195521.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/195521.html</trackback:ping><description><![CDATA[<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #000000">&#8220;不要重新发明轮子！！！&#8221;</span><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 乍听之下，这一句话似乎是很有道理。确实在很多情况下，这句话是很有道理。可是殊不知在这一句冠冕堂皇的理由下，有多少的创意、多少的激情被抹杀了？<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在很多情况下，有些中国的程序员只要自己想做一些有创造性的工作，确总是被上级或其他的某些同行嘲笑&#8220;你要做的这个东西已经有现成的了，有必要再花时间去做吗？你能做的比别人做出来的东西更好吗？你这是在重新发明轮子，而且是不好的轮子。&#8221;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;结果，一个接着一个的萌芽被&#8216;不要重新发明轮子&#8217;这个古训扼杀了。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;想起来真是觉得很悲哀也很无奈，中国的程序员永远只能使用外国人的技术，甚至其中有不少都是已经快要过时了才开始在中国普及开。一个接着一个的流行框架在国外的人手中产生出来，为什么他们就可以重新发明轮子，而我们就不行呢？死守古训导致的唯一的结果就是无法进步，永远只能使用别人的东西，最多就是罗列了一堆会使用的框架，真正的技术都是掌握在别人的手里。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;有一次面试，简历上列出了会使用：JSF,SPRING,HIBERNATE（还有不少其他的，具体的记不太清了），而且已经参与开发过了两个WEB类型的项目，并且已经通过了SCJP认证。结果确连几种List的区别，HashTable和HashMap的区别都分不清，设计模式方面更是惨不忍睹，甚至更不可思议的是连使用HTML语法画出一个稍显复杂的表格都办不到。回答是：因为都是使用框架和框架提供的标签，所以不需要接触这些&#8230;&#8230;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;还是那句话：有时候是该反省反省，除了框架，自己还剩下什么？<br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/snoics/aggbug/195521.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2008-04-24 12:52 <a href="http://www.blogjava.net/snoics/archive/2008/04/24/195521.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个关于分页的数据和显示分离的设计</title><link>http://www.blogjava.net/snoics/archive/2008/03/25/188446.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Tue, 25 Mar 2008 03:39:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2008/03/25/188446.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/188446.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2008/03/25/188446.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/188446.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/188446.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据分页显示是一项挺烦人的工作，涉及到数据来源，数据生成，数据显示这几个方面。数据有可能是从任意地方以任意方式获取到的，而且获取到的数据又有可能是经过了任意的方式处理之后，再以任意的方式显示给最终用户。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这...&nbsp;&nbsp;<a href='http://www.blogjava.net/snoics/archive/2008/03/25/188446.html'>阅读全文</a><img src ="http://www.blogjava.net/snoics/aggbug/188446.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2008-03-25 11:39 <a href="http://www.blogjava.net/snoics/archive/2008/03/25/188446.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Cron表达式【转】</title><link>http://www.blogjava.net/snoics/articles/188349.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 24 Mar 2008 13:02:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/articles/188349.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/188349.html</wfw:comment><comments>http://www.blogjava.net/snoics/articles/188349.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/188349.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/188349.html</trackback:ping><description><![CDATA[<p><br />
一个cron表达式有至少6个（也可能7个）有空格分隔的时间元素。</p>
<p>按顺序依次为 <br />
秒（0~59） <br />
分钟（0~59） <br />
小时（0~23） <br />
天（月）（0~31，但是你需要考虑你月的天数） <br />
月（0~11） <br />
天（星期）（1~7 1=SUN 或 SUN，MON，TUE，WED，THU，FRI，SAT） <br />
7.年份（1970－2099）</p>
<p>其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18/4)(/表示每隔4小时),一个列表(1,3,5),通配符。由于"月份中的日期"和"星期中的日期"这两个元素互斥的,必须要对其中一个设置?. <br />
0 0 10,14,16 * * ? 每天上午10点，下午2点，4点<br />
0 0/30 9-17 * * ?&nbsp;&nbsp; 朝九晚五工作时间内每半小时<br />
0 0 12 ? * WED 表示每个星期三中午12点 <br />
"0 0 12 * * ?" 每天中午12点触发 <br />
"0 15 10 ? * *" 每天上午10:15触发 <br />
"0 15 10 * * ?" 每天上午10:15触发 <br />
"0 15 10 * * ? *" 每天上午10:15触发 <br />
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发 <br />
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发 <br />
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发 <br />
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发 <br />
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发 <br />
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发 <br />
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发 <br />
"0 15 10 15 * ?" 每月15日上午10:15触发 <br />
"0 15 10 L * ?" 每月最后一日的上午10:15触发 <br />
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发 <br />
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发 <br />
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发 </p>
<p>有些子表达式能包含一些范围或列表 <br />
例如：子表达式（天（星期））可以为 &#8220;MON-FRI&#8221;，&#8220;MON，WED，FRI&#8221;，&#8220;MON-WED,SAT&#8221; <br />
&#8220;*&#8221;字符代表所有可能的值 <br />
因此，&#8220;*&#8221;在子表达式（月）里表示每个月的含义，&#8220;*&#8221;在子表达式（天（星期））表示星期的每一天 <br />
&nbsp;<br />
&#8220;/&#8221;字符用来指定数值的增量 <br />
例如：在子表达式（分钟）里的&#8220;0/15&#8221;表示从第0分钟开始，每15分钟 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在子表达式（分钟）里的&#8220;3/20&#8221;表示从第3分钟开始，每20分钟（它和&#8220;3，23，43&#8221;）的含义一样 </p>
<p>&#8220;？&#8221;字符仅被用于天（月）和天（星期）两个子表达式，表示不指定值 <br />
当2个子表达式其中之一被指定了值以后，为了避免冲突，需要将另一个子表达式的值设为&#8220;？&#8221; <br />
&nbsp;<br />
&#8220;L&#8221; 字符仅被用于天（月）和天（星期）两个子表达式，它是单词&#8220;last&#8221;的缩写 <br />
但是它在两个子表达式里的含义是不同的。 <br />
在天（月）子表达式中，&#8220;L&#8221;表示一个月的最后一天 <br />
在天（星期）自表达式中，&#8220;L&#8221;表示一个星期的最后一天，也就是SAT <br />
如果在&#8220;L&#8221;前有具体的内容，它就具有其他的含义了 <br />
例如：&#8220;6L&#8221;表示这个月的倒数第６天，&#8220;ＦＲＩＬ&#8221;表示这个月的最一个星期五 <br />
注意：在使用&#8220;L&#8221;参数时，不要指定列表或范围，因为这会导致问题 <br />
&nbsp;<br />
字段 允许值 允许的特殊字符<br />
秒&nbsp; 0-59&nbsp; , - * /<br />
分&nbsp; 0-59&nbsp; , - * /<br />
小时&nbsp; 0-23&nbsp; , - * /<br />
日期&nbsp; 1-31&nbsp; , - * ? / L W C<br />
月份&nbsp; 1-12 或者 JAN-DEC&nbsp; , - * /<br />
星期&nbsp; 1-7 或者 SUN-SAT&nbsp; , - * ? / L C #<br />
年（可选）&nbsp; 留空, 1970-2099&nbsp; , - * /<br />
</p>
<p><br />
&nbsp;</p>
<img src ="http://www.blogjava.net/snoics/aggbug/188349.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2008-03-24 21:02 <a href="http://www.blogjava.net/snoics/articles/188349.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>IE存储空间不足错误的终极解决方案</title><link>http://www.blogjava.net/snoics/archive/2008/03/24/188342.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 24 Mar 2008 12:38:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2008/03/24/188342.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/188342.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2008/03/24/188342.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/188342.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/188342.html</trackback:ping><description><![CDATA[IE有时会在打开一些页面时出现<br />
<br />
<span style="color: red">此对话框出现错误。<br />
<br />
错误：53<br />
存储空间不足，无法完成此操作</span><br />
<br />
的错误提示框，导致页面最终无法打开<br />
<br />
<br />
经过很长时间，终于发现在IE7中解决这个问题的解决方法<br />
<br />
在IE7中进行如下操作：<br />
<br />
Tools--&gt;Internet Options--&gt;Programs--&gt;Advanced--&gt;Reset--&gt;Reset<br />
<br />
这样讲IE7中的各项配置，包括插件全部都恢复到IE7刚安装完时的最初始化的状态，之前的那个错误也解决了。<br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/snoics/aggbug/188342.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2008-03-24 20:38 <a href="http://www.blogjava.net/snoics/archive/2008/03/24/188342.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>继续努力……</title><link>http://www.blogjava.net/snoics/archive/2007/11/25/162997.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Sun, 25 Nov 2007 10:51:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2007/11/25/162997.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/162997.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2007/11/25/162997.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/162997.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/162997.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;迷惑了一段时间，现在终于想通了，还是继续以前的执着，继续朝以前的那个目标不断努力吧。差点就放弃了，不过还是终于还是又回来了。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;一定要，也一定会变得更强，对自己有信心&nbsp;&nbsp;&nbsp;&nbsp;^_^<br />
<br />
<img src ="http://www.blogjava.net/snoics/aggbug/162997.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2007-11-25 18:51 <a href="http://www.blogjava.net/snoics/archive/2007/11/25/162997.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>snoics-reptile 网页爬虫2.1   (2006-10-27日更新)</title><link>http://www.blogjava.net/snoics/archive/2006/10/27/77730.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Fri, 27 Oct 2006 13:05:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/10/27/77730.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/77730.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/10/27/77730.html#Feedback</comments><slash:comments>21</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/77730.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/77730.html</trackback:ping><description><![CDATA[     <br />           <font size="5"><font face="Tahoma" size="4">最近因为工作太忙的原因，一直没有时间来更新，现在放出2.1的版本（包含最新的源代码）。</font><br /><br />        <font size="4">下载地址：<br /></font>                         <a href="/Files/snoics/snoics-reptile2.1.part1.rar"><font size="3">snoics-reptile2.1.part1.rar</font></a><br />                         <a href="/Files/snoics/snoics-reptile2.1.part2.rar"><font size="3">snoics-reptile2.1.part2.rar</font></a><br />                         <a href="/Files/snoics/snoics-reptile2.1.part3.rar"><font size="3">snoics-reptile2.1.part3.rar</font></a><br />                         <a href="/Files/snoics/snoics-reptile2.1.part4.rar"><font size="3">snoics-reptile2.1.part4.rar</font></a><br /><br />          <font size="4">（大家有什么意见可以在这里提出，只要有时间，我会尽量更新，有什么建议可以在blog里面提出，或者加我的MSN一起讨论。  ^_^ ）</font><br /><br /><table style="WIDTH: 624px; HEIGHT: 291px" width="624" border="1"><tbody><tr><td align="left" width="100%" colspan="2"><font color="green">版本历史<font size="+0"><br /><br /></font></font></td></tr><tr><td align="left" width="10%">2.1：<br /><br /></td><td align="left" width="95%">1、不用再配置snoics-configpath.xml中的路径。<br />2、定时自动保存Cache<br />3、修改了一些Bug<br /></td></tr><tr><td align="left" width="10%">2.0：<br /><br /></td><td align="left" width="95%">核心代码全部重写，增加了扩展性，通过扩展之后，基本上能实现对整个网站完整的解析<br /><br /></td></tr><tr><td align="left" width="10%">1.0：<br /><br /></td><td align="left" width="95%">实现了整站抓取的基本的功能，不能解析特殊的URL，对javascript无法辨认<br /></td></tr></tbody></table></font><img src ="http://www.blogjava.net/snoics/aggbug/77730.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-10-27 21:05 <a href="http://www.blogjava.net/snoics/archive/2006/10/27/77730.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>猫扑电台遨游插件</title><link>http://www.blogjava.net/snoics/archive/2006/09/06/68101.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Wed, 06 Sep 2006 11:28:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/09/06/68101.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/68101.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/09/06/68101.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/68101.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/68101.html</trackback:ping><description><![CDATA[发现猫扑的电台不错，把它作成遨游的插件了，放上来与大家分享。<br /><br />下载以后把文件解压到遨游的插件目录下，就会在侧边拦出现MOP的电台，用起来很方便。<a href="/Files/snoics/MOP"><br /><br /><br />http://www.blogjava.net/Files/snoics/MOP.rar</a><img src ="http://www.blogjava.net/snoics/aggbug/68101.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-09-06 19:28 <a href="http://www.blogjava.net/snoics/archive/2006/09/06/68101.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>snoics-reptile中的snoics-systemconfig.xml的CSDN中Java文档中心的抓取配置</title><link>http://www.blogjava.net/snoics/archive/2006/08/19/64517.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Sat, 19 Aug 2006 06:30:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/08/19/64517.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/64517.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/08/19/64517.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/64517.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/64517.html</trackback:ping><description><![CDATA[
		<p>    有些人说不知道snoics-reptile中的snoics-systemconfig.xml不知道怎么配置，这里就给出一个CSDN中Java文档中心的抓取配置的抓取配置。<br /><br />     在抓取完了之后往Apache的httpd.conf中加入<br />Listen 10001<br />&lt;VirtualHost *:10001&gt;<br />    DocumentRoot D:\\temp\\reptile\\website<br />&lt;/VirtualHost&gt;<br />     这段配置。<br /><br /><br />     最后删除抓取下来的文件夹中的D:\temp\reptile\website\author\index.html这个文件。不知道为什么文档中心的这个URL是一个空的页面<a href="http://dev.csdn.net/author">http://dev.csdn.net/author</a>  ，把这个URL的相对应的抓取下的文件删除就可以正常使用了<br /><br />     在抓取的过程中，有些图片文件可能会出现错误，不过不影响使用，因为这些图片的路径本身大概就有些问题。<br /><br /><br />      附件-配置文件：<a href="/Files/snoics/snoics-systemconfig.rar">http://www.blogjava.net/Files/snoics/snoics-systemconfig.rar</a></p>
<img src ="http://www.blogjava.net/snoics/aggbug/64517.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-08-19 14:30 <a href="http://www.blogjava.net/snoics/archive/2006/08/19/64517.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>源代码发布 snoics-reptile 网页爬虫2.0  </title><link>http://www.blogjava.net/snoics/archive/2006/06/03/50102.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Sat, 03 Jun 2006 02:53:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/06/03/50102.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/50102.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/06/03/50102.html#Feedback</comments><slash:comments>13</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/50102.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/50102.html</trackback:ping><description><![CDATA[
		<table width="90%">
				<tbody>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td>
																		<font color="#ff0000">源代码发布</font>
																		<br />
																		<br />snoics-reptile 网页爬虫2.0  <br /></td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td align="left" width="10%">作者：</td>
																<td align="left" width="95%">施伟</td>
														</tr>
														<tr>
																<td align="left" width="10%">EMail：</td>
																<td align="left" width="95%">snoics@hotmail.com</td>
														</tr>
														<tr>
																<td align="left" width="10%">主页：</td>
																<td align="left" width="95%">
																		<a href="/snoics" target="_blank">http://www.blogjava.net/snoics</a>
																</td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td align="left" width="100%">
																		<font color="red">
																				<br />
																				<br />FAQ</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">1、snoics-reptile是什么？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    是用纯Java开发的，用来进行网站镜像抓取的工具，可以使用配制文件中提供的URL入口，<br />把这个网站所有的能用浏览器通过GET的方式获取到的资源全部抓取到本地，包括网页和各<br />种类型的文件，如：图片、flash、mp3、zip、rar、exe等文件。可以将整个网站完整地下传至<br />硬盘内，并能保持原有的网站结构精确不变。只需要把抓取下来的网站放到web服务器<br />(如：Apache)中，就可以实现完整的网站镜像。<br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">2、现在已经有了其他的类似的软件，为什么还要开发snoics-reptile？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    因为有些在抓取的过程中经常会出现错误的文件，而且对很多使用<br />javascript控制的URL没有办法正确的解析，而snoics-reptile通过对外提供<br />接口和配置文件的形式，对特殊的URL，可以通过自由的扩展对外提<br />供的接口，并通过配置文件注入的方式，基本上能实现对所有的网页都<br />正确的解析和抓取。<br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">3、如何使用？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    a、配置 bin\snoics-configpath.xml 文件<br /><br />        将配置文件中的path节点的值改为conf文件夹在系统中的绝对路径，<br />        如: c:\snoics-reptile\conf <br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">    b、配置 conf\snoics-systemconfig.xml 文件<br /><br />        其中parameters节点中的配置为对需要抓取的网站的参数的配置，<br /><br />        以下是各个参数的说明： <br /><br />        1、websitename：<br /><br />        站点的名称(不能为空，由字母和数字组成)<br /><br />        2、charsetName：<br /><br />        该站点使用的字符集类型<br /><br />        3、website：<br /><br />        将被抓取的站点的域名<br /><br />        4、startpage：<br /><br />        抓取的起始页面<br /><br />        5、url：<br /><br />        该站点中将被抓取的部分(如果留空则为整个站点，可以有多个URL，<br />每个URL之间使用";"隔开)<br /><br />        6、remoteurlflag：<br /><br />        代表远程URL的标志，没有特殊情况请不要修改此处，使用默认值<br />(多个之间使用";"隔开)<br /><br />        7、forbidurl：<br /><br />        该站点中不被抓取的部分(多个之间使用";"隔开)<br /><br />        8、cachefile：<br /><br />        该站点使用的缓存文件，如果缓存文件不存在则自动创建一个新的，<br />如果已经存在，则会载入文件中保存的信息<br /><br />        9、filerootpath：<br /><br />        抓取下的文件的保存路径(必须是系统中的绝对路径)<br /><br />        10、indexpage：<br /><br />        将被保存成index.html文件名的URL类型(多个之间使用";"隔开)<br /><br />        11、filenamelength：<br /><br />        页面保存到本地时，随机生成的文件名的长度<br /><br />        12、cacheunitsize：<br /><br />        一个cache单元的大小<br /><br />        13、reptile-downloadfiletype：<br /><br />        将被抓取到本地的文件类型(多个之间使用";"隔开)<br /><br />        14、reptile-undownloadfiletype：<br /><br />        页面被保存到本地时，该种类型的文件的URL将被改成远程的URL地址<br />，如果这种类型出现在reptile-downloadfiletype中时，则文件将被抓取到本地，<br />而URL也将改成本地的URL(多个之间使用";"隔开) <br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">    c、在参数配置好之后，执行bin/run.bat文件<br /><br /></td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td align="left" width="100%">
										<font color="green">4、如何扩展接口？</font>
										<br />
										<br />
								</td>
						</tr>
						<tr>
								<td nowrap="" align="left" width="100%">    扩展接口使用的配置文件是：conf/snoics-reptile-urlregex.xml<br /><br />    首先加入一段如下的配置<br />    &lt;bean id="ahrefRegexUrl" class="com.snoics.reptile.regex.url.impl.UrlRegex" singleton="false"&gt; <br />        &lt;property name="regexUrl"&gt; <br />            &lt;!-- 提取可能包含URL的字符串 --&gt; <br />            &lt;value&gt;&lt;![CDATA[&lt;[^!&lt;&gt;]*\shref\s*=\s*["']?[^&lt;&gt;]*["'\s][^&lt;&gt;]*&gt;]]&gt;&lt;/value&gt; <br />        &lt;/property&gt; <br />        &lt;property name="replaceRegexUrl"&gt; <br />            &lt;!-- 替换可能包含URL的字符串 --&gt; <br />            &lt;value&gt;&lt;![CDATA[&lt;[^!&lt;&gt;]*\shref\s*=\s*["']?reptile-replace-string["'\s][^&lt;&gt;]*&gt;]]&gt;&lt;/value&gt; <br />        &lt;/property&gt; <br />        &lt;property name="getRegexUrl"&gt; <br />            &lt;!-- 提取最终URL --&gt; <br />            &lt;ref bean="ahrefGetRegexUrl"/&gt; <br />        &lt;/property&gt; <br />    &lt;/bean&gt;<br />    <br /><br />    其中ahrefGetRegexUrl是实现了com.snoics.reptile.regex.url.IGetUrlRegex接口的类，用来从可能包含了URL的字符串里面提取其中包含的URL <br /><br /><br />    其次加入如下的配置：<br /><br />     &lt;bean id="ahrefGetRegexUrl" class="com.snoics.reptile.regex.url.impl.AhrefGetRegexUrl" singleton="false"&gt;<br />         &lt;property name="regexString"&gt;<br />              &lt;!-- 提取最终URL --&gt;<br />               &lt;value&gt;&lt;![CDATA[href\s*=\s*["']?[^\s"]+["'\s]\s*]]&gt;&lt;/value&gt;<br />         &lt;/property&gt;<br />         &lt;property name="unIncludeRegexString"&gt;<br />                &lt;!-- <br />                     排除不需要的类型<br />                     多个正则表达式之间使用';'隔开 <br />                  --&gt;<br />                 &lt;value&gt;&lt;![CDATA[javascript\s?:\s?;mailto\s?:\s?;^#$;]]&gt;&lt;/value&gt;<br />           &lt;/property&gt;<br />      &lt;/bean&gt; <br /><br /><br />    最后，在如下的配置中，加入刚才配置好的部分 <br /><br />    &lt;bean id="urlRegexMap" class="com.snoics.reptile.regex.url.impl.UrlRegexMap"&gt; <br />        &lt;property name="ulrRegexMap"&gt; <br />            &lt;map&gt; <br />                &lt;!-- 名称 --&gt; <br />                &lt;entry key="ahref"&gt; <br />                    &lt;!-- 解析URL使用的类 --&gt; <br />                    &lt;ref bean="ahrefRegexUrl"/&gt; <br />                &lt;/entry&gt; <br />                &lt;entry key="src"&gt; <br />                    &lt;ref bean="srcRegexUrl"/&gt; <br />                &lt;/entry&gt; <br />            &lt;/map&gt; <br />        &lt;/property&gt; <br />    &lt;/bean&gt;<br /><br /><br /></td>
						</tr>
				</tbody>
		</table>
		<tr>
				<td>
						<table width="100%">
								<tbody>
										<tr>
												<td align="left" width="100%" colspan="2">
														<font color="green">5、版本历史<font size="+0"><br /><br /></font></font>
												</td>
										</tr>
										<tr>
												<td align="left" width="10%">2.0：<br /><br /></td>
												<td align="left" width="95%">核心代码全部重写，增加了扩展性，通过扩展之后，基本上能实现对整个网站完整的解析<br /><br /></td>
										</tr>
										<tr>
												<td align="left" width="10%">1.0：<br /><br /></td>
												<td align="left" width="95%">实现了整站抓取的基本的功能，不能解析特殊的URL，对javascript无法辨认<br /><br /></td>
										</tr>
								</tbody>
						</table>源代码下载地址：<br /><br /><a href="/Files/snoics/snoics-reptile2.0-src.part1.rar">snoics-reptile2.0-src.part1.rar</a></td>
		</tr>
		<br />
		<a href="/Files/snoics/snoics-reptile2.0-src.part2.rar">snoics-reptile2.0-src.part2.rar</a>
		<br />
		<a href="/Files/snoics/snoics-reptile2.0-src.part3.rar">snoics-reptile2.0-src.part3.rar</a>
		<br />
		<a href="/Files/snoics/snoics-reptile2.0-src.part4.rar">snoics-reptile2.0-src.part4.rar</a>
		<br />
<img src ="http://www.blogjava.net/snoics/aggbug/50102.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-06-03 10:53 <a href="http://www.blogjava.net/snoics/archive/2006/06/03/50102.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>snoics-reptile 网页爬虫2.0</title><link>http://www.blogjava.net/snoics/archive/2006/05/29/48833.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 29 May 2006 13:41:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/05/29/48833.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/48833.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/05/29/48833.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/48833.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/48833.html</trackback:ping><description><![CDATA[
		<table width="60%">
				<tbody>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td>snoics-reptile 网页爬虫2.0<br /><br /></td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td align="left" width="10%">作者：</td>
																<td align="left" width="95%">施伟</td>
														</tr>
														<tr>
																<td align="left" width="10%">EMail：</td>
																<td align="left" width="95%">snoics@hotmail.com</td>
														</tr>
														<tr>
																<td align="left" width="10%">主页：</td>
																<td align="left" width="95%">
																		<a href="/snoics" target="_blank">http://www.blogjava.net/snoics</a>
																</td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td>
										<table width="100%">
												<tbody>
														<tr>
																<td align="left" width="100%">
																		<font color="red">
																				<br />
																				<br />FAQ</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">1、snoics-reptile是什么？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    是用纯Java开发的，用来进行网站镜像抓取的工具，可以使用<br />配制文件中提供的URL入口，把这个网站所有的能用浏览器通过<br />GET的方式获取到的资源全部抓取到本地，包括网页和各种类型<br />的文件，如：图片、flash、mp3、zip、rar、exe等文件。可以将整<br />个网站完整地下传至硬盘内，并能保持原有的网站结构精确不变。<br />只需要把抓取下来的网站放到web服务器(如：Apache)中，就可以<br />实现完整的网站镜像。<br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">2、现在已经有了其他的类似的软件，为什么还要开发snoics-reptile？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    因为有些在抓取的过程中经常会出现错误的文件，而且对很多使用<br />javascript控制的URL没有办法正确的解析，而snoics-reptile通过对外提供<br />接口和配置文件的形式，对特殊的URL，可以通过自由的扩展对外提供<br />的接口，并通过配置文件注入的方式，基本上能实现对所有的网页都<br />正确的解析和抓取。<br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">
																		<font color="green">3、如何使用？</font>
																		<br />
																		<br />
																</td>
														</tr>
														<tr>
																<td align="left" width="100%">    a、配置 bin\snoics-configpath.xml 文件<br /><br />        将配置文件中的path节点的值改为conf文件夹在系统中的绝对路径，<br />        如: c:\snoics-reptile\conf <br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">    b、配置 conf\snoics-systemconfig.xml 文件<br /><br />        其中parameters节点中的配置为对需要抓取的网站的参数的配置，<br /><br />        以下是各个参数的说明： <br /><br />        1、websitename：<br /><br />        站点的名称(不能为空，由字母和数字组成)<br /><br />        2、charsetName：<br /><br />        该站点使用的字符集类型<br /><br />        3、website：<br /><br />        将被抓取的站点的域名<br /><br />        4、startpage：<br /><br />        抓取的起始页面<br /><br />        5、url：<br /><br />        该站点中将被抓取的部分(如果留空则为整个站点，可以有多个URL，<br />         每个URL之间使用";"隔开)<br /><br />        6、remoteurlflag：<br /><br />        代表远程URL的标志，没有特殊情况请不要修改此处，使用默认值<br />(多个之间使用";"隔开)<br /><br />        7、forbidurl：<br /><br />        该站点中不被抓取的部分(多个之间使用";"隔开)<br /><br />        8、cachefile：<br /><br />        该站点使用的缓存文件，如果缓存文件不存在则自动创建一个新的，<br />如果已经存在，则会载入文件中保存的信息<br /><br />        9、filerootpath：<br /><br />        抓取下的文件的保存路径(必须是系统中的绝对路径)<br /><br />        10、indexpage：<br /><br />        将被保存成index.html文件名的URL类型(多个之间使用";"隔开)<br /><br />        11、filenamelength：<br /><br />        页面保存到本地时，随机生成的文件名的长度<br /><br />        12、cacheunitsize：<br /><br />        一个cache单元的大小<br /><br />        13、reptile-downloadfiletype：<br /><br />        将被抓取到本地的文件类型(多个之间使用";"隔开)<br /><br />        14、reptile-undownloadfiletype：<br /><br />        页面被保存到本地时，该种类型的文件的URL将被改成远程的URL<br />地址，如果这种类型出现在reptile-downloadfiletype中时，则文件将被抓取<br />到本地，而URL也将改成本地的URL(多个之间使用";"隔开) <br /><br /></td>
														</tr>
														<tr>
																<td align="left" width="100%">    c、在参数配置好之后，执行bin/run.bat文件<br /><br /></td>
														</tr>
												</tbody>
										</table>
								</td>
						</tr>
						<tr>
								<td align="left" width="100%">
										<font color="green">4、如何扩展接口？</font>
										<br />
										<br />
								</td>
						</tr>
						<tr>
								<td nowrap="" align="left" width="100%">    扩展接口使用的配置文件是：conf/snoics-reptile-urlregex.xml<br /><br />    首先加入一段如下的配置,其中正则表达式部分应该特定的需要自己给出，<br />    reptile-replace-string用来代替URL出现的位置，在程序执行的过程中，该部分<br />    会被自动替换。<br />    &lt;bean id="ahrefRegexUrl" class="com.snoics.reptile.regex.url.impl.UrlRegex" singleton="false"&gt; <br />        &lt;property name="regexUrl"&gt; <br />            &lt;!-- 提取可能包含URL的字符串 --&gt; <br />            &lt;value&gt;&lt;![CDATA[&lt;[^!&lt;&gt;]*\shref\s*=\s*["']?[^&lt;&gt;]*["'\s][^&lt;&gt;]*&gt;]]&gt;&lt;/value&gt; <br />        &lt;/property&gt; <br />        &lt;property name="replaceRegexUrl"&gt; <br />            &lt;!-- 替换可能包含URL的字符串 --&gt; <br />            &lt;value&gt;&lt;![CDATA[&lt;[^!&lt;&gt;]*\shref\s*=\s*["']?reptile-replace-string["'\s][^&lt;&gt;]*&gt;]]&gt;&lt;/value&gt; <br />        &lt;/property&gt; <br />        &lt;property name="getRegexUrl"&gt; <br />            &lt;!-- 提取最终URL --&gt; <br />            &lt;ref bean="ahrefGetRegexUrl"/&gt; <br />        &lt;/property&gt; <br />    &lt;/bean&gt;<br />    <br /><br />    其中ahrefGetRegexUrl是实现了com.snoics.reptile.regex.url.IGetUrlRegex<br />    接口的类，用来从可能包含了URL的字符串里面提取其中包含的URL <br /><br />    其次加入如下的配置：<br /><br />     &lt;bean id="ahrefGetRegexUrl" class="com.snoics.reptile.regex.url.impl.AhrefGetRegexUrl" singleton="false"&gt;<br />         &lt;property name="regexString"&gt;<br />              &lt;!-- 提取最终URL --&gt;<br />               &lt;value&gt;&lt;![CDATA[href\s*=\s*["']?[^\s"]+["'\s]\s*]]&gt;&lt;/value&gt;<br />         &lt;/property&gt;<br />         &lt;property name="unIncludeRegexString"&gt;<br />                &lt;!-- <br />                     排除不需要的类型<br />                     多个正则表达式之间使用';'隔开 <br />                  --&gt;<br />                 &lt;value&gt;&lt;![CDATA[javascript\s?:\s?;mailto\s?:\s?;^#$;]]&gt;&lt;/value&gt;<br />           &lt;/property&gt;<br />      &lt;/bean&gt;<br /><br />    最后，在如下的配置中，加入刚才配置好的部分 <br /><br />    &lt;bean id="urlRegexMap" class="com.snoics.reptile.regex.url.impl.UrlRegexMap"&gt; <br />        &lt;property name="ulrRegexMap"&gt; <br />            &lt;map&gt; <br />                &lt;!-- 名称 --&gt; <br />                &lt;entry key="ahref"&gt; <br />                    &lt;!-- 解析URL使用的类 --&gt; <br />                    &lt;ref bean="ahrefRegexUrl"/&gt; <br />                &lt;/entry&gt; <br />                &lt;entry key="src"&gt; <br />                    &lt;ref bean="srcRegexUrl"/&gt; <br />                &lt;/entry&gt; <br />            &lt;/map&gt; <br />        &lt;/property&gt; <br />    &lt;/bean&gt;<br /><br /><br /></td>
						</tr>
				</tbody>
		</table>
		<tr>
				<td>
						<table width="100%">
								<tbody>
										<tr>
												<td align="left" width="100%" colspan="2">
														<font color="green">5、版本历史<font size="+0"><br /><br /></font></font>
												</td>
										</tr>
										<tr>
												<td align="left" width="10%">2.0：<br /><br /></td>
												<td align="left" width="95%">核心代码全部重写，增加了扩展性，通过扩展之后，基本上能实现对整个网站完整的解析<br /><br /></td>
										</tr>
										<tr>
												<td align="left" width="10%">1.0：<br /><br /></td>
												<td align="left" width="95%">实现了整站抓取的基本的功能，不能解析特殊的URL，对javascript无法辨认<br /><br /></td>
										</tr>
								</tbody>
						</table>
						<font color="#800080">
								<br />下载地址：<br /><br /><a href="/Files/snoics/snoics-reptile2.0.part1.rar" target="_blank">snoics-reptile2.0.part1.rar</a><br /><br /><a href="/Files/snoics/snoics-reptile2.0.part2.rar" target="_blank">snoics-reptile2.0.part2.rar</a><br /><br /><a href="/Files/snoics/snoics-reptile2.0-doc.rar" target="_blank">snoics-reptile2.0-doc.rar</a>     <br /></font>
				</td>
		</tr>
<img src ="http://www.blogjava.net/snoics/aggbug/48833.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-05-29 21:41 <a href="http://www.blogjava.net/snoics/archive/2006/05/29/48833.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>框架.....</title><link>http://www.blogjava.net/snoics/archive/2006/03/09/34411.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Thu, 09 Mar 2006 01:43:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/03/09/34411.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/34411.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/03/09/34411.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/34411.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/34411.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 现在各种各样的框架满天飞,几乎随便找个人都能把各种框架,模式,说的头头是道.弄的好象如果不懂这些,你就是落伍,就不懂的什么是编程,什么是企业应用系统的开发.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp; 现在很多初学者一上来，就是这个框架,那个框架的，一会学了这个一会又学那个,往往忽略了最重要最基本的JAVA基础.<BR>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; 个人认为,框架不等同于JAVA,它只是JAVA下面的一种工具，就算学会使用再多的框架也不代表就学会了JAVA.一种工具可能一开始不会用，可是如果重复使用过几次,我想只要是正常的人，没有人学不会的，就算是条件反射也该会了(会用了和理解了是两种完全不同的情况).<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp; 结果也就出现了这样的情况,问到一个挺简单的问题,可是却都答不上来,原因是原来都是在别人的或者是框架里面封装好的东西,自己只是负责调用而已.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp; 框架是比较容易过时的东西，只有基础才是比较持久的.所以当在学会了使用一大堆的框架以后,请考虑一下,如果除了框架,我还剩下了什么.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp; 只是对这种情况的感想,没有任何贬低框架的意思.<img src ="http://www.blogjava.net/snoics/aggbug/34411.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-03-09 09:43 <a href="http://www.blogjava.net/snoics/archive/2006/03/09/34411.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>捕获控制台的所有输出信息</title><link>http://www.blogjava.net/snoics/archive/2006/03/03/33355.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Fri, 03 Mar 2006 01:10:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/03/03/33355.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/33355.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/03/03/33355.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/33355.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/33355.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一般情况下,在记录日志时,只能把通过API进行记录的信息写入自定义的日志文件，其余的信息就无法被写入了.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 解决的办法就是重写System.out和System.err,让System.out,System.err的写入转向到你的日志文件，这样只要在控制台的所有的输出信息都会被记录到日志文件中.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例如可以在系统进行初始化时进行这样的操作:<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 重写System.out:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PrintStream printStreamOut = new PrintStream(outputStreamOut);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.setOut(printStreamOut);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 重写System.err<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PrintStream printStreamErr = new PrintStream(outputStreamErr);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.setErr(printStreamErr);<BR><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这里的outputStreamOut,和outputStreamErr都是自定义的重定向的日志文件的OutputStream<BR><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 现在重定向输出的问题解决了，可以又出现了一个新的问题: 在控制台上看不到任何输出信息,输出的信息全部被定向到日志文件中.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 要解决这个问题还需要自己实现一个OutputStream,让OutputStream能同时写入多个输出.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 首先继承java.io.OutputStream,然后实现public abstract void write(int b) throws IOException; 并且覆写java.io.OutputStream中的其他的方法,具体的实现方式按照自己的需求来做,这里就不做出具体的实现了.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 通过实现自己实现OutputStream之后,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PrintStream printStreamOut = new PrintStream(outputStreamOut);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PrintStream printStreamErr = new PrintStream(outputStreamErr);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 中分别把outputStreamOut和outputStreamErr对象换成自己实现的OutputStream对象，这样就可以实现在一个OutputStream对象中进行多个输出操作.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 按照以上的思路进行的实现，可以完全把控制台的所有的输出写入到日志文件中,包括System.out.println这样的输出.<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; snoics<img src ="http://www.blogjava.net/snoics/aggbug/33355.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-03-03 09:10 <a href="http://www.blogjava.net/snoics/archive/2006/03/03/33355.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OpenCMS V6.03 + Oracle92 的中文版完整安装过程</title><link>http://www.blogjava.net/snoics/archive/2006/02/23/32066.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Thu, 23 Feb 2006 01:57:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/02/23/32066.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/32066.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/02/23/32066.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/32066.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/32066.html</trackback:ping><description><![CDATA[1. 把opencms.war复制到Tomcat\webapps目录下,并复制classes12.jar到Tomcat\common\lib目录下,然后启动Tomcat,在启动完成之后,删除opencms.war<BR><BR>2. 在oracle中新建一个表空间opencms<BR><BR>3. 用<A href="http://localhost:8080/opencms/setup">http://localhost:8080/opencms/setup</A>进行安装<BR><BR>4. 安装过程中，数据库类型选择oracle9i, 用户名为system,另一个用户名是准备用来分配给opencms使用的用户名，这个地方可以按照具体的情况自己进行设置，这个用户可以是本身在oracle中并不存在的用户,安装程序会自动的创建这个用户,并把opencms表空间分配给该用户,接下来的表空间和Index的输入框中都输入opencms.<BR><BR>5. 接下去只需要按照提示一路Continue,最后当文件都导入完成之后，opencms就安装完成了，初始管理员和密码是Admin,admin<BR><BR>6. 安装完成之后，<BR>&nbsp; 修改/system/workplace/resources/commons/explorer.js <BR>&nbsp; 中的行: <BR>"&lt;td&gt;"+vr.langadress+"&amp;&lt;/td&gt;\n" <BR>为:"&lt;td nowrap&gt;"+vr.langadress+"&lt;/td&gt;\n" <BR><BR>然后把org.opencms.locales.zh.zip包复制到Tomcat\webapps\opencms\WEB-INF\packages\modules目录下,使用Admin进入opencms系统,选择Administrator管理界面,然后选择模块管理,导入org.opencms.locales.zh.zip包.然后解压org.opencms.locales.zh.zip,把org.opencms.locales.zh\system\workplace\locales\zh\messages下的templateone_form_zh.properties和templateone_zh.properties以及org整个文件夹复制到Tomcat\webapps\opencms\WEB-INF\classes目录下.<BR><BR>7.重启Tomcat,使用Admin进入opencms系统,选择Administrator管理界面,然后把语言类型设置成chinese,这时就能使用中文界面的opencms了<img src ="http://www.blogjava.net/snoics/aggbug/32066.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-02-23 09:57 <a href="http://www.blogjava.net/snoics/archive/2006/02/23/32066.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>自己实现的一个加密算法</title><link>http://www.blogjava.net/snoics/archive/2006/02/20/31599.html</link><dc:creator>snoics</dc:creator><author>snoics</author><pubDate>Mon, 20 Feb 2006 02:45:00 GMT</pubDate><guid>http://www.blogjava.net/snoics/archive/2006/02/20/31599.html</guid><wfw:comment>http://www.blogjava.net/snoics/comments/31599.html</wfw:comment><comments>http://www.blogjava.net/snoics/archive/2006/02/20/31599.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/snoics/comments/commentRss/31599.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/snoics/services/trackbacks/31599.html</trackback:ping><description><![CDATA[<P>/*<BR>&nbsp;* Encrypt 字符串加密<BR>&nbsp;* <BR>&nbsp;* @author shiwei 2004-8-28<BR>&nbsp;*/</P>
<P>package com.snoics.base.util;<BR>/**<BR>&nbsp;* Encrypt 字符串加密<BR>&nbsp;* @author shiwei<BR>&nbsp;*<BR>&nbsp;*/<BR>public class Encrypt {</P>
<P>&nbsp;&nbsp;&nbsp; public Encrypt() {</P>
<P>&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * 加密字符串<BR>&nbsp;&nbsp;&nbsp;&nbsp; * @param encryptstring<BR>&nbsp;&nbsp;&nbsp;&nbsp; * @return String<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static String encrypt(String encryptstring){<BR>&nbsp;&nbsp;&nbsp; &nbsp;String newstring="";<BR>&nbsp;&nbsp;&nbsp; &nbsp;if(encryptstring.length()&lt;1){<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;return encryptstring;<BR>&nbsp;&nbsp;&nbsp; &nbsp;}else{<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;String tempstring=StringClass.remove(encryptstring,0,(int)(encryptstring.length()/3));<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;tempstring=StringClass.getConvertString(tempstring);<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;encryptstring=StringClass.getConvertString(encryptstring);<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;newstring=encrypt(encryptstring,tempstring);<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;return newstring;<BR>&nbsp;&nbsp;&nbsp; &nbsp;}<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; /**<BR>&nbsp;&nbsp;&nbsp;&nbsp; * 普通加密字符串<BR>&nbsp;&nbsp;&nbsp;&nbsp; * <BR>&nbsp;&nbsp;&nbsp;&nbsp; * @param encryptstring1<BR>&nbsp;&nbsp;&nbsp;&nbsp; * @param encryptstring2<BR>&nbsp;&nbsp;&nbsp;&nbsp; * @return String<BR>&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp;&nbsp; public static String encrypt(String encryptstring1, String encryptstring2) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int strcount = 0; //字符串ASCII码的总和<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int newpasswordlength = 0; //生成的密码长度<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int seed1 = 0; //种子<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int seed2 = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String str = "";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String newpassword = ""; //生成的密码<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char newchar;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int newcharint = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int thechar = 0;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str = encryptstring2 + encryptstring1;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.length() &gt; 0) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; str.length(); i++) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strcount = strcount + str.charAt(i);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newpasswordlength = (strcount * strcount) / str.length() + str.length();</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int temp = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int temp2 = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ((newpasswordlength &lt;= 0) || (newpasswordlength &gt; 100)) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; temp = temp + str.length();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; temp2 = temp + temp2;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newpasswordlength = 100;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; encryptstring1.length(); i++) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; seed1 = seed1 + encryptstring1.charAt(i);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; encryptstring2.length(); i++) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; seed2 = seed2 + encryptstring2.charAt(i);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; newpasswordlength; i++) {</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (i &lt; str.length()) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; thechar = str.charAt(i);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; thechar = str.charAt(i % (str.length() - 1))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; + str.charAt((str.length() - 1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - (i % str.length()));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newcharint = thechar * (seed1 * (i + 1) + thechar);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newcharint = newString(newcharint);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newcharint = thechar * (seed2 * (i + 1) + thechar);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newcharint = newString(newcharint);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newchar = (char) newcharint;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newpassword = newpassword + String.valueOf(newchar);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; newpassword = newpassword.substring((encryptstring2.length() + encryptstring1.length()) % 100);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return (newpassword);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return ("空字符串不能被加密");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp; private static int newString(int charint) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ((charint &gt; 127) || (charint &lt; 32)) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (charint &gt; 127) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; charint = (charint - charint/2+1) / 2;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while(charint==60||charint==62||charint==34||charint==32||charint==39){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;charint = charint + 1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (charint &lt; 32) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; charint = (charint + charint/2-1) * 2;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while(charint==60||charint==62||charint==34||charint==32||charint==39){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;charint = charint + 1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return (charint);<BR>&nbsp;&nbsp;&nbsp; }<BR><BR>&nbsp;&nbsp;&nbsp; public static void main(String[] args) {<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; String theusername = "1abc1";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String thepassword = "1def1";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String theusername1 = "1def1";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String thepassword1 = "1abc1";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String newstring=Encrypt.encrypt(theusername,thepassword);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("newstring="+newstring);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String newstringa=Encrypt.encrypt(theusername1,thepassword1);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("newstringa="+newstringa);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String newstring2=Encrypt.encrypt(newstring);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("newstring2="+newstring2);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String newstring3=Encrypt.encrypt(newstring2);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("newstring3="+newstring3);<BR>&nbsp;&nbsp;&nbsp; }<BR><BR>}<BR><BR><BR>执行结果:<BR><BR></P>newstring=*?C4%;V[GKOoUX[_#i%ptvy)!!#01&amp;c(46*o;=?y{?AB#4HI7%7LM:==U?@?AXBZFGHH`IJKfgO4QlmR7qrt::wxz=<BR>newstringa=(=A4$;TYDHLmTW[_#d#kpvx*!#-/$a(56)m89;vy@AB!2DE4$7LN::;P==?AYBXCDEE^IJKceL3NikR6opq89uvw;<BR>newstring2=ij887i)54)?!@A!!!Ab##eBf##ddd#efff#b#cadc#bc_!!]@<BR>newstring3=(qI}!+A!#z%%4?((<BR><img src ="http://www.blogjava.net/snoics/aggbug/31599.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/snoics/" target="_blank">snoics</a> 2006-02-20 10:45 <a href="http://www.blogjava.net/snoics/archive/2006/02/20/31599.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>