<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[安道生練功房 - Latest posts for "crc2121"]]></title>
		<link>https://forum.andowson.com/posts/listByUser/92</link>
		<description><![CDATA[Latest posts for "crc2121"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>[網頁程式設計 Web Development] 如何用程式寫出一個文字檔案，編碼為Big-5</title>
				<description><![CDATA[ 我有一個問題就是將讀取到且是在螢幕所顯示出來的另存一個.txt檔案要如何做？ 
<br>
我參考範例文件：http://pastie.org/3262724 
<br>
仍然兜不太出來，懇請指點&lt;(_ _)&gt; 
<br>
<br>
我的程式碼： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>import java.io.*;<br>import java.io.File;<br>import java.io.IOException;<br>import java.util.Scanner;<br>import java.util.List;<br><br>import org.jdom.Document;<br>import org.jdom.Element;<br>import org.jdom.JDOMException;<br>import org.jdom.input.SAXBuilder;<br><br>public class WriteFile {<br>    public static void main(String[] args) throws IOException {<br>    SAXBuilder builder = new SAXBuilder();<br>    File xmlFile = new File("C:\\JAVA_WORK\\test1.xml");<br>    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));<br>    System.out.print("請輸入分類號："); <br>    String s = br.readLine();<br>    System.out.print("------------------------------------------\n");<br>    boolean found = false;<br>    FileWriter fw;<br>    String  Signal="";<br>    String lineSep = System.getProperty("line.separator");<br><br>    if (s != null) {<br>             try {<br>                       Document document = (Document) builder.build(xmlFile);<br>                       Element rootNode = document.getRootElement();<br>                       List list = rootNode.getChildren("ROW");<br><br>                       for (int i = 0; i &lt; list.size(); i++) {<br>                          Element node = (Element) list.get(i);<br>                           if (node.getChildText("分類號").equals(s)) {<br>                                 System.out.println("年度號：" + node.getChildText("年度號"));<br>                                 System.out.println("分類號：" + node.getChildText("分類號"));<br>                                 System.out.println("案次號：" + node.getChildText("案次號"));<br>                                 Scanner input = new Scanner(System.in);		      <br>                                 input.hasNextLine();<br>                                 found = true;<br>                            }<br>                        }<br>                        fw= new FileWriter("c:\\JAVA_WORK\\T02.txt");<br>                        fw.write(Signal);<br>                        fw.close();<br>                        Signal += "年度號：" + node.getChildText("年度號")+lineSep+ "分類號：" + node.getChildText("分類號")+lineSep+ "案次號：" + node.getChildText("案次號")+lineSep;<br>                        } catch(Exception e) {<br>                           System.out.println("發生" + e + "例外無法寫檔！");  	 <br>                        } catch (IOException io) {<br>                           System.out.println(io.getMessage());<br>                        } catch (JDOMException jdomex) {<br>                           System.out.println(jdomex.getMessage());<br>                        } <br>                    }<br>                       if (!found) {<br>                            System.out.println("\n查無此分類號！請重新輸入...");<br>                       } else {System.out.println("\n搜尋結束...");}<br>               }  <br>}<br></code></pre>
<br>
而我只要寫入僅三項年度號、分類號和案次號；存檔目的地：C:\JAVA_WORK\Write01.txt 
<br>
執行結果示意圖如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>C:\JAVA_WORK\JAVA\HW&gt; javac SearchXML.java<br><br>C:\JAVA_WORK\JAVA\HW&gt; java SearchXMLFile<br>請輸入分類號：0299<br><br>年度號：70<br>分類號：0299<br>案次號：001<br><br>年度號：79<br>分類號：0299<br>案次號：011<br><br>年度號：78<br>分類號：0299<br>案次號：013<br><br>搜尋完畢...<br><br>C:\JAVA_WORK\JAVA\HW&gt; <br></code></pre>
<br>
然後存檔為.txt檔案，裡面的中文件如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>第一筆...<br>年度號：70<br>分類號：0299<br>案次號：001<br><br>第二筆...<br>年度號：79<br>分類號：0299<br>案次號：011<br><br>第三筆...<br>年度號：78<br>分類號：0299<br>案次號：013<br></code></pre>
<br>
以上三筆資料。 
<br>
錯誤訊息如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>C:\JAVA_WORK\JAVA\HW\Jwork&gt;javac WriteFile.java<br>WriteFile.java:52: cannot find symbol<br>symbol  : variable node<br>location: class WriteFile<br>Signal += "年度號：" + node.getChildText("年度號")+lineSep+ "分類號：" + node.getChildText("分類號")+lineSep+ "案次號：" + node.getChildText("案次號")+lineSep;<br>                                            ^<br>WriteFile.java:52: cannot find symbol<br>symbol  : variable node<br>location: class WriteFile<br>Signal += "年度號：" + node.getChildText("年度號")+lineSep+ "分類號：" + node.getChildText("分類號")+lineSep+ "案次號：" + node.getChildText("案次號")+lineSep;<br>       ^<br>WriteFile.java:52: cannot find symbol<br>symbol  : variable node<br>location: class WriteFile<br>Signal += "年度號：" + node.getChildText("年度號")+lineSep+ "分類號：" + node.getChildText("分類號")+lineSep+ "案次號：" + node.getChildText("案次號")+lineSep;<br>                                                ^<br>3 errors<br><br>C:\JAVA_WORK\JAVA\HW\Jwork&gt;<br></code></pre>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/572/1205</guid>
				<link>https://forum.andowson.com/posts/preList/572/1205</link>
				<pubDate><![CDATA[Fri, 27 Jan 2012 13:40:26]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] 關於try catch 的問題?</title>
				<description><![CDATA[ 我弄個詢問功能且會顯示出來，如下所示： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>C:\JAVA_WORK&gt;javac ReadXMLFile.java<br><br>C:\JAVA_WORK&gt;java ReadXMLFile<br><br>輸入分類號：0299<br><br>年度號 : 0085<br>分類號 : 0299<br>案次號 : 001<br><br>年度號 : 0085<br>分類號 : 0299<br>案次號 : 002<br><br>年度號 : 0089<br>分類號 : 0299<br>案次號 : 001<br><br>C:\JAVA_WORK&gt;<br></code></pre>
<br>
<br>
目前的錯誤訊息如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>C:\JAVA_WORK&gt;java ReadXMLFile<br>輸入分類號：<br>Exception in thread "main" java.lang.NumberFormatException: For input string: ""<br><br>        at java.lang.NumberFormatException.forInputString(Unknown Source)<br>        at java.lang.Integer.parseInt(Unknown Source)<br>        at java.lang.Integer.parseInt(Unknown Source)<br>        at ReadXMLFile.main(ReadXMLFile.java:20)<br><br>C:\JAVA_WORK&gt;</code></pre>
<br>
<br>
我想設一個[try-catch]機制"找不到的情況"，如下所示？ 
<br>
當我輸入一個不存在或沒有該屬於分類號就會印出"查無此分類號！請重新輸入..."。 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>C:\JAVA_WORK&gt;javac ReadXMLFile.java<br><br>C:\JAVA_WORK&gt;java ReadXMLFile<br><br>輸入分類號：0419<br><br>查無此分類號！請重新輸入...<br><br>C:\JAVA_WORK&gt;<br></code></pre>
<br>
懇請指點一下&lt;(_ _)&gt; 
<br>
<br>
程式碼如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>import java.io.*;<br>import java.io.File;<br>import java.io.IOException;<br>import java.util.Scanner;<br>import java.util.List;<br><br>import org.jdom.Document;<br>import org.jdom.Element;<br>import org.jdom.JDOMException;<br>import org.jdom.input.SAXBuilder;<br> <br>public class SearchFile {<br>    public static void main(String[] args) throws IOException {<br>  <br>    SAXBuilder builder = new SAXBuilder();<br>    File xmlFile = new File("C:\\JAVA_WORK\\test1.xml");<br>    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));<br>    System.out.print("輸入分類號："); <br>    String s = br.readLine(); <br>    int num = Integer.parseInt(s); <br><br>    try {<br>	Document document = (Document) builder.build(xmlFile);<br>	Element rootNode = document.getRootElement();<br>	List list = rootNode.getChildren("ROW");<br><br>	for (int i = 0; i &lt; list.size(); i++) <br>	{<br> 	   Element node = (Element) list.get(i);<br>                   <br>                   if (node.getChildText("分類號").equals(""+s))<br>	   {<br>	      System.out.println("年度號 : " + node.getChildText("年度號"));<br>	      System.out.println("分類號 : " + node.getChildText("分類號"));<br>  	      System.out.println("案次號 : " + node.getChildText("案次號"));<br>	      Scanner input = new Scanner(System.in);		      <br>	      input.hasNextLine();<br>                   }              <br>                   <br>		}<br>		<br>             <br>	  } catch (IOException io) {<br>		System.out.println(io.getMessage());<br>	  } catch (JDOMException jdomex) {<br>		System.out.println(jdomex.getMessage());<br>	  }<br>	}<br>}<br></code></pre>
<br>
xml格式如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>&lt;?xml version = '1.0' encoding = 'Big5'?&gt;<br>&lt;!DOCTYPE ROWSET [<br>&lt;!ELEMENT ROWSET (ROW)*&gt;<br>&lt;!ELEMENT ROW (年度號, 案名?, 分類號, 案次號 )&gt;<br>&lt;!ATTLIST ROW          num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 電子檔案名稱 num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件名稱     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件媒體型式 num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件數量     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件單位     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 主題         num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附註         num CDATA #REQUIRED&gt;<br>&lt;!ELEMENT 案名 (#PCDATA)&gt;<br>&lt;!ELEMENT 年度號 (#PCDATA)&gt;<br>&lt;!ELEMENT 分類號 (#PCDATA)&gt;<br>&lt;!ELEMENT 案次號 (#PCDATA)&gt;<br>]&gt;<br><br>&lt;ROWSET&gt;<br><br> &lt;ROW num="1"&gt;<br>  年度號 : 0072<br>  分類號 : 200<br>  案次號 : 001<br> &lt;/ROW&gt;<br> &lt;ROW num="2"&gt;<br>  年度號 : 0070<br>  分類號 : 200<br>  案次號 : 002<br> &lt;/ROW&gt;<br> &lt;ROW num="3"&gt;<br>  年度號 : 0076<br>  分類號 : 011<br>  案次號 : 004<br> &lt;/ROW&gt;<br> &lt;ROW num="4"&gt;<br>  年度號 : 0091<br>  分類號 : 011<br>  案次號 : 001<br> &lt;/ROW&gt;<br> &lt;ROW num="5"&gt;<br>  年度號 : 0086<br>  分類號 : 0102<br>  案次號 : 053<br> &lt;/ROW&gt;<br> &lt;ROW num="6"&gt;<br>  年度號 : 0081<br>  分類號 : 012<br>  案次號 : 023<br> &lt;/ROW&gt;<br> &lt;ROW num="7"&gt;<br>  年度號 : 0071<br>  分類號 : 112<br>  案次號 : 013<br> &lt;/ROW&gt;<br><br>&lt;/ROWSET&gt;<br></code></pre>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/571/1203</guid>
				<link>https://forum.andowson.com/posts/preList/571/1203</link>
				<pubDate><![CDATA[Wed, 25 Jan 2012 13:47:46]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] 回覆:JAVA讀取XML一問 for JDOM</title>
				<description><![CDATA[ 原本錯了25個，現在錯了１２個（應該是有修正），現在是哪邊有問題？ 
<br>
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br><br>C:\JAVA_WORK&gt;javac ReadXMLFile.java<br>ReadXMLFile.java:4: package org.jdom does not exist<br>import org.jdom.Document;<br>               ^<br>ReadXMLFile.java:5: package org.jdom does not exist<br>import org.jdom.Element;<br>               ^<br>ReadXMLFile.java:6: package org.jdom does not exist<br>import org.jdom.JDOMException;<br>               ^<br>ReadXMLFile.java:7: package org.jdom.input does not exist<br>import org.jdom.input.SAXBuilder;<br>                     ^<br>ReadXMLFile.java:12: cannot find symbol<br>symbol  : class SAXBuilder<br>location: class ReadXMLFile<br>          SAXBuilder builder = new SAXBuilder();<br>          ^<br>ReadXMLFile.java:12: cannot find symbol<br>symbol  : class SAXBuilder<br>location: class ReadXMLFile<br>          SAXBuilder builder = new SAXBuilder();<br>                                   ^<br>ReadXMLFile.java:17: cannot find symbol<br>symbol  : class Document<br>location: class ReadXMLFile<br>                Document document = (Document) builder.build(xmlFile);<br>                ^<br>ReadXMLFile.java:17: cannot find symbol<br>symbol  : class Document<br>location: class ReadXMLFile<br>                Document document = (Document) builder.build(xmlFile);<br>                                     ^<br>ReadXMLFile.java:18: cannot find symbol<br>symbol  : class Element<br>location: class ReadXMLFile<br>                Element rootNode = document.getRootElement();<br>                ^<br>ReadXMLFile.java:23: cannot find symbol<br>symbol  : class Element<br>location: class ReadXMLFile<br>                   Element node = (Element) list.get(i);<br>                   ^<br>ReadXMLFile.java:23: cannot find symbol<br>symbol  : class Element<br>location: class ReadXMLFile<br>                   Element node = (Element) list.get(i);<br>                                   ^<br>ReadXMLFile.java:34: cannot find symbol<br>symbol  : class JDOMException<br>location: class ReadXMLFile<br>          } catch (JDOMException jdomex) {<br>                   ^<br>12 errors<br><br>C:\JAVA_WORK&gt;<br></code></pre>
<br>
<br>
懇請指點一下，謝謝&lt;(_ _)&gt;]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/570/1201</guid>
				<link>https://forum.andowson.com/posts/preList/570/1201</link>
				<pubDate><![CDATA[Mon, 23 Jan 2012 10:28:56]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] JAVA讀取XML一問 for JDOM</title>
				<description><![CDATA[ 現在我只要讀取xml檔案中的標籤（YYY、SSS、NO三個字串），xml檔案格式如下： 
<br>
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>&lt;?xml version = '1.0' encoding = 'Big5'?&gt;<br>&lt;!DOCTYPE ROWSET [<br>&lt;!ELEMENT ROWSET (ROW)*&gt;<br>&lt;!ELEMENT ROW (YYY, SSS, NO)&gt; <br>&lt;!ATTLIST ROW          num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 電子檔案名稱 num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件名稱     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件媒體型式 num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件數量     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附件單位     num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 主題         num CDATA #REQUIRED&gt;<br>&lt;!ATTLIST 附註         num CDATA #REQUIRED&gt;<br>&lt;!ELEMENT YYY (#PCDATA)&gt;<br>&lt;!ELEMENT SSS (#PCDATA)&gt;<br>&lt;!ELEMENT NO (#PCDATA)&gt;<br>]&gt;<br><br>&lt;ROWSET&gt;<br><br>&lt;ROW num="1"&gt;<br>  &lt;YYY&gt;0080&lt;/YYY&gt;<br>  &lt;SSS&gt;010302&lt;/SSS&gt;<br>  &lt;NO&gt;002&lt;/NO&gt;<br>&lt;/ROW&gt;<br><br>&lt;ROW num="2"&gt;<br>  &lt;YYY&gt;0078&lt;/YYY&gt;<br>  &lt;SSS&gt;011602&lt;/SSS&gt;<br>  &lt;NO&gt;001&lt;/NO&gt;<br>&lt;/ROW&gt;<br><br>&lt;ROW num="3"&gt;<br>  &lt;YYY&gt;0070&lt;/YYY&gt;<br>  &lt;SSS&gt;019302&lt;/SSS&gt;<br>  &lt;NO&gt;011&lt;/NO&gt;<br>&lt;/ROW&gt;<br>     ‧<br>       ‧<br>     ‧<br>       ‧<br>&lt;ROW num="1225"&gt;<br>  &lt;YYY&gt;0099&lt;/YYY&gt;<br>  &lt;SSS&gt;018719&lt;/SSS&gt;<br>  &lt;NO&gt;111&lt;/NO&gt;<br>&lt;/ROW&gt;<br><br>&lt;/ROWSET&gt;<br></code></pre>
<br>
<br>
然後我顯示出來我要的資訊及如下程式碼： 
<br>
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>-- Output --<br>年度號: 0080<br>分類號: 010302<br>案次號: 002<br>---------------------------------------<br>年度號:0078<br>分類號:011602<br>案次號:001<br>---------------------------------------<br>     ‧<br>       ‧<br>       ‧<br>       ‧<br>年度號: 0099<br>分類號: 018719<br>案次號: 111<br></code></pre>
<br>
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>import java.io.File;<br>import java.io.IOException;<br>import java.util.List;<br>import org.jdom.Document;<br>import org.jdom.Element;<br>import org.jdom.JDOMException;<br>import org.jdom.input.SAXBuilder;<br> <br>public class ReadXMLFile {<br>	public static void main(String[] args) {<br> <br>	  SAXBuilder builder = new SAXBuilder();<br>	  File xmlFile = new File("C:\\JAVA_WORK\\test3.xml");  //已修正<br><br> <br>	  try {<br> <br>		Document document = (Document) builder.build(xmlFile);<br>		Element rootNode = document.getRootElement();<br>		List list = rootNode.getChildren("ROW");  //已修正<br> <br>		for (int i = 0; i &lt; list.size(); i++) {<br> <br>		   Element node = (Element) list.get(i);<br> <br>		   System.out.println("年度號 : " + node.getChildText("YYY"));<br>		   System.out.println("分類號 : " + node.getChildText("SSS"));<br>		   System.out.println("案次號 : " + node.getChildText("NO"));<br>		   System.out.println("----------------------------------------"); <br>		}<br> <br>	  } catch (IOException io) {<br>		System.out.println(io.getMessage());<br>	  } catch (JDOMException jdomex) {<br>		System.out.println(jdomex.getMessage());<br>	  }<br>	}<br>}<br></code></pre>
<br>
<br>
仍是有錯？有在想是不是沒安裝JDOM與設定路徑？ 
<br>
<br>
目前將http://jdom.org/dist/binary/ 
<br>
<br>
的jdom-1.1.2.zip擋下載了。 
<br>
<br>
可以請教一下怎麼安裝與設定路徑嗎？ 
<br>
<br>
感激不盡&lt;(_ _)&gt;]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/570/1199</guid>
				<link>https://forum.andowson.com/posts/preList/570/1199</link>
				<pubDate><![CDATA[Sun, 22 Jan 2012 01:01:50]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[Database] 回覆:在ACCESS 2007裡面的VBA一個問題？</title>
				<description><![CDATA[ 我用圖來解釋一下好了。 
<br>
<br>
圖中的ACCESS2007建立的資料庫中的test資料表（如紅線上方），透過SQL或是VBA在或者是JAVA都可，能否把圖中的綠藍紫框個別製作成資料表且每個資料表由001一直至做到XXX為止。 
<br><a class="snap_shots" href="http://img200.imageshack.us/f/002wui.jpg/" target="_new" rel="nofollow">http://img200.imageshack.us/f/002wui.jpg/</a>
<br>
其中ＩＤ欄位重複是和段欄位做分段用。 
<br>
<br>
p.s所有資料型態皆為備忘，如圖：<a class="snap_shots" href="http://img195.imageshack.us/f/001anpk.jpg/" target="_new" rel="nofollow">http://img195.imageshack.us/f/001anpk.jpg/</a>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/468/968</guid>
				<link>https://forum.andowson.com/posts/preList/468/968</link>
				<pubDate><![CDATA[Thu, 20 Jan 2011 23:25:03]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[Database] 在ACCESS 2007裡面的VBA一個問題？</title>
				<description><![CDATA[ 原本是依賴拉物件方式搭SQL去做，後來伺服器掛點，最新一次的備份出來用CSV的；所以想問若是用Office 2007裡面ACCESS，用ACCESS去做每一行（即每一行筆資料）查詢的SQL語法應該怎麼下？或是怎麼寫支程式進去下達？如下： 
<br>
<br>
<br>
原始資料表 ALL_TABLE 
<br>
<br>
索引_欄位1_欄位2_欄位3_欄位4 
<br>
<br>
01_XXXX1_YYYY1_ZZZZ1_WWWW1 
<br>
<br>
02_XXXX2_YYYY2_ZZZZ2_WWWW2 
<br>
．　 ． ．　 ． ． 
<br>
．　 ． ．　 ． ． 
<br>
．　 ． ．　 ． ． 
<br>
．　 ． ．　 ． ． 
<br>
．　 ． ．　 ． ． 
<br>
NN_XXXXN_YYYYN_ZZZZN_WWWWN 
<br>
<br>
每一行各別轉如下： 
<br>
<br>
01_TABLE 
<br>
<br>
索引_欄位1_欄位2_欄位3_欄位4 
<br>
<br>
01_XXXX1_YYYY1_ZZZZ1_WWWW1 
<br>
<br>
02_TABLE 
<br>
<br>
索引_欄位1_欄位2_欄位3_欄位4 
<br>
<br>
02_XXXX2_YYYY2_ZZZZ2_WWWW2 
<br>
<br>
........一直到 
<br>
<br>
NN_TABLE 
<br>
<br>
索引_欄位1_欄位2_欄位3_欄位4 
<br>
<br>
NN_XXXXN_YYYYN_ZZZZN_WWWWN 
<br>
<br>
<br>
～以上～ 
<br>
<br>
有這樣子SQL語法嗎？或是VBA應該怎麼寫？還是java可以做到？ 
<br>
<br>
懇請賜教，感激不盡～]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/468/964</guid>
				<link>https://forum.andowson.com/posts/preList/468/964</link>
				<pubDate><![CDATA[Thu, 20 Jan 2011 15:44:31]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] 回覆:JAVA實作Search 一問 for Lucene</title>
				<description><![CDATA[ 我知道我錯哪邊了囧rz... 
<br>
編碼的屬性是UTF-8應更改為ANSI才對囧rz...]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/467/963</guid>
				<link>https://forum.andowson.com/posts/preList/467/963</link>
				<pubDate><![CDATA[Thu, 20 Jan 2011 15:23:16]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] JAVA實作Search 一問 for Lucene</title>
				<description><![CDATA[ 我無法搜尋我要的詞彙（鼻涕），我這是有少打甚麼？為何只會搜尋到０筆資料。 
<br>
可以給個起手式嗎？ 
<br>
<br>
懇請賜教～ 
<br>
<br>
Lucene 3.0.0 API 
<br><a class="snap_shots" href="http://www.jarvana.com/jarvana/view/org/apache/lucene/lucene-core/3.0.0/lucene-core-3.0.0-javadoc.jar!/index.html?org/apache/lucene/util/Version.html" target="_new" rel="nofollow">http://www.jarvana.com/jarvana/view/org/apache/lucene/lucene-core/3.0.0/lucene-core-3.0.0-javadoc.jar!/index.html?org/apache/lucene/util/Version.html</a>
<br>
<br>
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>[Index code]<br><br>import java.io.File;<br>import java.io.FileReader;<br>import java.io.IOException;<br>import java.util.Date;<br><br>import org.apache.lucene.analysis.standard.StandardAnalyzer;<br>import org.apache.lucene.document.DateTools;<br>import org.apache.lucene.document.Document;<br>import org.apache.lucene.document.Field;<br>import org.apache.lucene.index.IndexWriter;<br>import org.apache.lucene.store.Directory;<br>import org.apache.lucene.store.SimpleFSDirectory;<br>import org.apache.lucene.util.Version;<br><br>public class Indexer<br>{<br>   public static void main(String[] args) throws IOException<br>   {<br>  String Idx = "C:\\test\\Idx";<br>  String dateDir = "C:\\test\\Data";<br>  IndexWriter indexWriter = null;<br><br>  Directory dir = new SimpleFSDirectory(new File(Idx));<br>  indexWriter = new IndexWriter(dir,new StandardAnalyzer(Version.LUCENE_30),true,IndexWriter.MaxFieldLength.UNLIMITED);<br><br>  File[] files = new File(dateDir).listFiles();<br><br>  for (int i = 0; i &lt; files.length; i++)<br>  {<br>  Document doc = new Document();<br>  doc.add(new Field("contents", new FileReader(files[i])));<br>  doc.add(new Field("filename", files[i].getName(), Field.Store.YES, Field.Index.NOT_ANALYZED));<br>  doc.add(new Field("indexDate",DateTools.dateToString(new Date(), DateTools.Resolution.DAY),Field.Store.YES,Field.Index.NOT_ANALYZED));<br>  indexWriter.addDocument(doc);<br>  }<br>  System.out.println("numDocs"+indexWriter.numDocs());<br>  indexWriter.close();<br><br>    }<br><br>}<br>[END]<br><br>[Searcher code]<br><br>import java.io.File;<br>import java.io.IOException;<br><br>import org.apache.lucene.analysis.standard.StandardAnalyzer;<br>import org.apache.lucene.document.Document;<br>import org.apache.lucene.queryParser.ParseException;<br>import org.apache.lucene.queryParser.QueryParser;<br>import org.apache.lucene.search.IndexSearcher;<br>import org.apache.lucene.search.Query;<br>import org.apache.lucene.search.ScoreDoc;<br>import org.apache.lucene.search.TopDocs;<br>import org.apache.lucene.store.Directory;<br>import org.apache.lucene.store.SimpleFSDirectory;<br>import org.apache.lucene.util.Version;<br><br>public class Searcher<br>{<br>    public static void main(String[] args) throws IOException, ParseException<br>    {<br>   String Idx = "C:\\test\\Idx";<br>   Directory dir = new SimpleFSDirectory(new File(Idx));<br>   IndexSearcher indexSearch = new IndexSearcher(dir);<br><br>   QueryParser queryParser = new QueryParser(Version.LUCENE_30, "contents", new StandardAnalyzer(Version.LUCENE_30));<br>   Query query = queryParser.parse("鼻涕"); //key Query term<br>   TopDocs hits = indexSearch.search(query, 500);<br>   System.out.println("找到"+hits.totalHits+"個");<br>   for (int i = 0; i &lt; hits.scoreDocs.length; i++)<br>   {<br>   ScoreDoc sdoc = hits.scoreDocs[i];<br>   Document doc = indexSearch.doc(sdoc.doc);<br>   System.out.println(doc.get("filename"));<br>   }<br>   indexSearch.close();<br>    }<br>}<br>[END]<br></code></pre>
<br>
<br>
訊息回應如下圖： 
<br>
http://img263.imageshack.us/f/bug03.jpg/ 
<br>
<br>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/467/961</guid>
				<link>https://forum.andowson.com/posts/preList/467/961</link>
				<pubDate><![CDATA[Wed, 19 Jan 2011 14:34:00]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] 回覆:看書做一個 Lucene 提供的 index 可是... 出現5個bug可是卻不知道是哪邊打錯了？</title>
				<description><![CDATA[ 已修正完~]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/466/960</guid>
				<link>https://forum.andowson.com/posts/preList/466/960</link>
				<pubDate><![CDATA[Wed, 19 Jan 2011 14:30:33]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
			<item>
				<title>[網頁程式設計 Web Development] 看書做一個 Lucene 提供的 index 可是... 出現5個bug可是卻不知道是哪邊打錯了？</title>
				<description><![CDATA[ 看書做一個 Lucene 提供的 index 可是... 出現5個bug可是卻不知道是哪邊打錯了？ 
<br>
可以請前輩指導一下嗎？ 
<br>
<br>
感激不盡&lt;(_ _)&gt; 
<br>
<br>
圖片如下： 
<br><a class="snap_shots" href="http://img130.imageshack.us/f/bug01.jpg/" target="_new" rel="nofollow">http://img130.imageshack.us/f/bug01.jpg/</a>
<br>
<br>
<br>
程式碼如下： 
<br>
<pre class="line-numbers"><code class="language-java match-braces"><br>import java.io.File;<br>import java.io.FileReader;<br>import java.io.Reader;<br>import java.io.FileFilter;<br>import java.util.Date;<br>import org.apache.lucene.analysis.*;<br>import org.apache.lucene.analysis.Analyzer;<br>import org.apache.lucene.analysis.standard.StandardAnalyzer;<br>import org.apache.lucene.document.Document;<br>import org.apache.lucene.document.Field;<br>import org.apache.lucene.index.IndexWriter;<br><br>public class TxtFileIndex<br>{<br>       public static void main(String[] args) throws Exception<br>       {<br>          File dataDir = new File("C:\\IR\\IR_TEST");<br>          File indexDir = new File("C:\\IR\\IR_index");<br><br>          Analyzer luceneAnalyzer = new StandardAnalyzer();<br>          File[] dataFiles = dataDir.listFiles();<br><br>          IndexWriter indexWriter = new IndexWriter(indexDir,luceneAnalyzer,true);<br><br>          long startTime = new Date().getTime();<br>          for (int i=0;i&lt;dataFiles.length;i++)<br>          {<br>              if(dataFiles[i].isFile() &amp;&amp; dataFiles[i].getName().endsWith(".txt"))<br>              {<br>                    System.out.println("Idx"+dataFiles[i].getCanonicalPath());<br><br>                    Document document = Document();<br>                    Reader txtReader = new FileReader(dataFiles[i]);<br>                    document.add(new Field("path", dataFiles[i].getCanonicalPath(), Field.Store.YES, Field.Index.UN_TOKENIZED));<br>                    document.add(new Field("contents, txtReader"));<br>              }<br>          }<br>          indexWriter.optimize();<br>          indexWriter.close();<br>          long endTime = new Date().getTime();<br><br>          System.out.println("It take "+ (endTime - startTime) + "milliseconds to create index for the files in directory." + dataDir.getPath());<br><br>       }<br>}<br></code></pre>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/466/958</guid>
				<link>https://forum.andowson.com/posts/preList/466/958</link>
				<pubDate><![CDATA[Mon, 17 Jan 2011 16:34:32]]> GMT</pubDate>
				<author><![CDATA[ crc2121]]></author>
			</item>
	</channel>
</rss>