2012-03-22 86 views
-2

這是我的作業,但請先閱讀我的問題描述。文件查找器Java程序:作業

我必須寫一個Java程序作爲

一個。目錄的路徑將作爲命令行參數傳遞給程序。然後程序會提示輸入文件名並找到所有具有該名稱的文件。 如果沒有參數傳遞,程序應該搜索前一次運行的目錄。不要使用任何數據庫。

b。如果用戶鍵入exit/quit/bye,程序將停止執行。

問題描述:

*我的問題是這個問題說,我得把命令行的目錄名稱,如果不通過我得把以前進入目錄。但是當我們傳遞命令行參數時,我們需要運行程序。這意味着每次我必須運行程序來傳遞命令行參數。 因此,如果參數未通過(如有問題,我無法使用數據庫),我怎麼能記住前一個。。 *

回答

1

我真的不明白「程序應該從上次運行搜索目錄」是什麼意思。所以我會嘗試回答2種可能性:

  1. 上次從同一會話中運行。 (這只是正在運行)

    在爲了做到這一點,你應該創建一個存儲在ArrayList中運行的所有 一個單身,並獲得最新的路徑。紀念圖案也可能是另一個解決方案。

  2. 以前從相同/不同的會話中運行(手段也許昨天運行,或上個月或去年)和計算機可能已每次運行之間關閉。

    爲此,我認爲您應該使用FileWriter或BufferedWriter將路徑寫入默認文件。然後創建 一個FileReader或BufferedReader從該文件中讀取以獲取正在運行的最後一個 路徑。

+0

如果我使用第一個邏輯,我的困惑是如果我使用單例模式並存儲了prev條目,但是當我再次運行該程序時,我將失去該值,不是嗎?我錯過了什麼嗎? – Andy 2012-03-22 06:02:42

+0

是的。如果這是你關心的問題,你應該使用第二個選項。 – Rudy 2012-03-22 06:05:37

2

可以存儲在一個文件中的實際目錄名的名稱(這將是當你的「上一個」目錄名,不帶參數重新運行)

持久性是關鍵。你必須堅持(商店)狀態以外的應用程序,它可以在那裏它可以生存

+0

謝謝AD。這很有幫助 – Andy 2012-03-30 07:40:40