﻿<?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-yegucheng-随笔分类-java技术</title><link>http://www.blogjava.net/yegucheng/category/21108.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 15 Dec 2007 10:01:08 GMT</lastBuildDate><pubDate>Sat, 15 Dec 2007 10:01:08 GMT</pubDate><ttl>60</ttl><item><title>图片缩放功能的实现</title><link>http://www.blogjava.net/yegucheng/archive/2007/12/15/167964.html</link><dc:creator>yegucheng</dc:creator><author>yegucheng</author><pubDate>Sat, 15 Dec 2007 08:06:00 GMT</pubDate><guid>http://www.blogjava.net/yegucheng/archive/2007/12/15/167964.html</guid><wfw:comment>http://www.blogjava.net/yegucheng/comments/167964.html</wfw:comment><comments>http://www.blogjava.net/yegucheng/archive/2007/12/15/167964.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yegucheng/comments/commentRss/167964.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yegucheng/services/trackbacks/167964.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 图片缩放功能的实现（这里只实现了图片缩小功能，放大原理类似）&nbsp;&nbsp;<a href='http://www.blogjava.net/yegucheng/archive/2007/12/15/167964.html'>阅读全文</a><img src ="http://www.blogjava.net/yegucheng/aggbug/167964.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yegucheng/" target="_blank">yegucheng</a> 2007-12-15 16:06 <a href="http://www.blogjava.net/yegucheng/archive/2007/12/15/167964.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>weblogic配置sql server数据源，不能将 JDBC 存储配置为使用配置为支持全局事务的 JDBC 数据源</title><link>http://www.blogjava.net/yegucheng/archive/2007/12/07/166156.html</link><dc:creator>yegucheng</dc:creator><author>yegucheng</author><pubDate>Fri, 07 Dec 2007 13:36:00 GMT</pubDate><guid>http://www.blogjava.net/yegucheng/archive/2007/12/07/166156.html</guid><wfw:comment>http://www.blogjava.net/yegucheng/comments/166156.html</wfw:comment><comments>http://www.blogjava.net/yegucheng/archive/2007/12/07/166156.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yegucheng/comments/commentRss/166156.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yegucheng/services/trackbacks/166156.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在weblogic中，不能将 JDBC 存储配置为使用配置为支持全局事务的 JDBC 数据源&nbsp;&nbsp;<a href='http://www.blogjava.net/yegucheng/archive/2007/12/07/166156.html'>阅读全文</a><img src ="http://www.blogjava.net/yegucheng/aggbug/166156.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yegucheng/" target="_blank">yegucheng</a> 2007-12-07 21:36 <a href="http://www.blogjava.net/yegucheng/archive/2007/12/07/166156.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Collections.emptyList()生成的List不支持add方法</title><link>http://www.blogjava.net/yegucheng/archive/2007/10/29/156639.html</link><dc:creator>yegucheng</dc:creator><author>yegucheng</author><pubDate>Mon, 29 Oct 2007 04:28:00 GMT</pubDate><guid>http://www.blogjava.net/yegucheng/archive/2007/10/29/156639.html</guid><wfw:comment>http://www.blogjava.net/yegucheng/comments/156639.html</wfw:comment><comments>http://www.blogjava.net/yegucheng/archive/2007/10/29/156639.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/yegucheng/comments/commentRss/156639.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yegucheng/services/trackbacks/156639.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 使用Collections.emptyList()生成的List不支持add方法&nbsp;&nbsp;<a href='http://www.blogjava.net/yegucheng/archive/2007/10/29/156639.html'>阅读全文</a><img src ="http://www.blogjava.net/yegucheng/aggbug/156639.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yegucheng/" target="_blank">yegucheng</a> 2007-10-29 12:28 <a href="http://www.blogjava.net/yegucheng/archive/2007/10/29/156639.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Java API操作文件的字符集</title><link>http://www.blogjava.net/yegucheng/archive/2007/10/26/156032.html</link><dc:creator>yegucheng</dc:creator><author>yegucheng</author><pubDate>Fri, 26 Oct 2007 02:01:00 GMT</pubDate><guid>http://www.blogjava.net/yegucheng/archive/2007/10/26/156032.html</guid><wfw:comment>http://www.blogjava.net/yegucheng/comments/156032.html</wfw:comment><comments>http://www.blogjava.net/yegucheng/archive/2007/10/26/156032.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/yegucheng/comments/commentRss/156032.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yegucheng/services/trackbacks/156032.html</trackback:ping><description><![CDATA[<p>笔者的场景是这样的，笔者使用code smith作为代码生成工具，并在Eclipse中做插件开发，code smith天生<br />
对GB的支持比较弱，只能生成UTF-8编码，这在Eclipse开发的过程中不会存在问题，但是在使用Eclipse的导出<br />
功能时，Eclipse底层使用ANT的执行方式，ANT的默认字符集默认使用当前系统的字符集，这时在编译导出的时候，<br />
会出现字符无法识别的问题，导致导出或者打包失败。<br />
&nbsp;一种方式可以改变Eclipse工程的默认字符集，以及自动生成的ant配置文件中字符集的配置，这对于单个工程是有<br />
效的，但处理工程间依赖时，被依赖的工程同样会出现字符集问题，即使被依赖工程设定ant的字符集。<br />
&nbsp;另一种方式，是手工转换，讲UTF-8的字符集转换为GBK的，微软的网站提供了一个批量转换工具，但是在转换之后，<br />
文档的最前面还会有可能存在多于字符，并导致ant打包失败<br />
&nbsp;最后，没办法自己写了一个字符集转换工具，因为是自己用，所以够用就行，下面是转换部分的代码，实现UTF8到<br />
GBK的转换，其他转换可以对代码稍作修改。</p>
<p>&nbsp;<br />
import org.apache.commons.lang.ArrayUtils;</p>
<p>public class EncodeRepairTool {<br />
&nbsp;public static final byte[] bPre = "EFBBBF".getBytes();<br />
&nbsp;private int i = 0;</p>
<p>&nbsp;/**<br />
&nbsp; * @param args<br />
&nbsp; */<br />
&nbsp;public static void main(String[] args) {&nbsp;&nbsp;<br />
&nbsp;&nbsp;String path = "D:\\eclipse-dev-3.3\\workspace";<br />
&nbsp;&nbsp;File file = new File(path);<br />
&nbsp;&nbsp;EncodeRepairTool scanner = new EncodeRepairTool();<br />
&nbsp;&nbsp;scanner.scanFolder(file);</p>
<p>&nbsp;}</p>
<p>&nbsp;</p>
<p>&nbsp;public void scanFolder(File file) {<br />
&nbsp;&nbsp;if (file.isDirectory()) {<br />
&nbsp;&nbsp;&nbsp;File[] files = file.listFiles();<br />
&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; files.length; i++) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;scanFolder(files[i]);<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;} else if (file.getName().endsWith(".java")) {<br />
&nbsp;&nbsp;&nbsp;removePreCode(file);<br />
&nbsp;&nbsp;}<br />
&nbsp;}</p>
<p>&nbsp;private void removePreCode(File file) {<br />
&nbsp;&nbsp;try {<br />
&nbsp;&nbsp;&nbsp;FileInputStream fis = new FileInputStream(file);<br />
&nbsp;&nbsp;&nbsp;int size = fis.available();<br />
&nbsp;&nbsp;&nbsp;if (size &lt; 24) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;return;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;i ++ ;<br />
&nbsp;&nbsp;&nbsp;byte[] bs = new byte[size];<br />
&nbsp;&nbsp;&nbsp;fis.read(bs);<br />
&nbsp;&nbsp;&nbsp;byte[] tbs = ArrayUtils.subarray(bs, 0, 3);<br />
&nbsp;&nbsp;&nbsp;byte[] tbs1 = new byte[] { new Integer(0xEF).byteValue(),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new Integer(0xBB).byteValue(),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new Integer(0xBF).byteValue() };<br />
&nbsp;&nbsp;&nbsp;boolean bol = false;<br />
&nbsp;&nbsp;&nbsp;if (tbs[0] == tbs1[0] &amp;&amp; tbs[1] == tbs1[1] &amp;&amp; tbs[2] == tbs1[2]) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;bol = true;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;fis.close();<br />
&nbsp;&nbsp;&nbsp;if (!bol) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("&nbsp; " + i + " : " + file.getName());<br />
&nbsp;&nbsp;&nbsp;&nbsp;tbs = bs;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;else {<br />
&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("**" + i + " : " + file.getName());<br />
&nbsp;&nbsp;&nbsp;&nbsp;tbs = ArrayUtils.subarray(bs, 3, size);<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;InputStreamReader reader = new InputStreamReader(new ByteArrayInputStream(tbs), "UTF-8");<br />
&nbsp;&nbsp;&nbsp;BufferedReader br = new BufferedReader(reader);<br />
&nbsp;&nbsp;&nbsp;StringBuffer buffer = new StringBuffer();<br />
&nbsp;&nbsp;&nbsp;String s = br.readLine();<br />
&nbsp;&nbsp;&nbsp;while (s != null) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;buffer.append(s);<br />
&nbsp;&nbsp;&nbsp;&nbsp;buffer.append("\n");<br />
&nbsp;&nbsp;&nbsp;&nbsp;s =&nbsp; br.readLine();<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;reader.close();<br />
&nbsp;&nbsp;&nbsp;byte[] nbs = buffer.toString().getBytes("GBK");&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;FileOutputStream fos = new FileOutputStream(file);<br />
&nbsp;&nbsp;&nbsp;fos.write(nbs);<br />
&nbsp;&nbsp;&nbsp;fos.flush();<br />
&nbsp;&nbsp;&nbsp;fos.close();<br />
&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;} catch (FileNotFoundException e) {<br />
&nbsp;&nbsp;&nbsp;// TODO 自动生成 catch 块<br />
&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
&nbsp;&nbsp;} catch (IOException e) {<br />
&nbsp;&nbsp;&nbsp;// TODO 自动生成 catch 块<br />
&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
&nbsp;&nbsp;}</p>
<p>&nbsp;}</p>
<p>}<br />
</p>
<img src ="http://www.blogjava.net/yegucheng/aggbug/156032.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yegucheng/" target="_blank">yegucheng</a> 2007-10-26 10:01 <a href="http://www.blogjava.net/yegucheng/archive/2007/10/26/156032.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用apche的net包操作serv-U和x-light的细微区别</title><link>http://www.blogjava.net/yegucheng/archive/2007/10/26/156008.html</link><dc:creator>yegucheng</dc:creator><author>yegucheng</author><pubDate>Fri, 26 Oct 2007 01:08:00 GMT</pubDate><guid>http://www.blogjava.net/yegucheng/archive/2007/10/26/156008.html</guid><wfw:comment>http://www.blogjava.net/yegucheng/comments/156008.html</wfw:comment><comments>http://www.blogjava.net/yegucheng/archive/2007/10/26/156008.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yegucheng/comments/commentRss/156008.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yegucheng/services/trackbacks/156008.html</trackback:ping><description><![CDATA[在使用apache的net包处理Serv-U和x-lighgt时遇到的几点不同<br />
进入一个空目录：<br />
&nbsp;在serv-U下，调用fTPClient.changeWorkingDirectory("")方法没有任何问题(指向一个空的目录)<br />
&nbsp;在x-light下，调用方法，会返回501信息<br />
当下载完文件后：<br />
&nbsp;使用 fTPClient.retrieveFileStream(url)方法下载文件，在serv-U下，可以直接下载下一个文件<br />
&nbsp;但是在x-light下，调用 fTPClient.retrieveFileStream(url)方法后，<br />
&nbsp;必须执行 fTPClient.completePendingCommand()方法，关闭当前下载操作，<br />
&nbsp;才能执行下一个下载任务（在net包的API中有相关的规定）。<br />
&nbsp;
<img src ="http://www.blogjava.net/yegucheng/aggbug/156008.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yegucheng/" target="_blank">yegucheng</a> 2007-10-26 09:08 <a href="http://www.blogjava.net/yegucheng/archive/2007/10/26/156008.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>