2012-03-22 15 views
-2

これは私の宿題ですが、まず問題の説明をお読みください。ファイルファインダーJavaプログラム:宿題

私は

としてJavaプログラムを記述する必要があります。ディレクトリのパスは、コマンドライン引数としてプログラムに渡されます。次に、プログラムはファイル名の入力を求め、その名前のファイルをすべて探します。 引数が渡されない場合、プログラムは前の実行からディレクトリを検索する必要があります。データベースを使用しないでください。

b。ユーザーがexit/quit/byeを入力すると、プログラムは実行を停止します。

問題の説明:

*私の問題は、その質問である私は、コマンドラインからディレクトリ名を取る必要があり、それが渡されていない場合、私は、以前入力したディレクトリを取らなければならないと述べています。しかし、コマンドライン引数を渡すときには、プログラムを実行する必要があります。それは、コマンドライン引数を渡すためにプログラムを実行する必要があるたびに意味します。 それで、引数が渡されなかった場合、以前のものを覚えておくことができます(問題はデータベースを使用できません)。 *

答えて

1

"プログラムは以前の実行からディレクトリを検索する必要があります"とはどういう意味ですか?

  1. 前回の実行同じセッションから:だから私は2つの可能性に答えることをしようとします。

    これを実行するには、 をすべてArrayListに格納し、最新のパスを取得するシングルトンを作成する必要があります。メメモのパターンもこれのための別の解決策かもしれません。

  2. 異なる/同じセッションからの前回の実行は、コンピュータが各実行の間オフにされている場合があります(多分昨日実行し、または先月、または昨年意味)。

    このため、FileWriterまたはBufferedWriterを使用してデフォルトファイルへのパスを書き込む必要があります。最後に パスを実行するには、このファイルから読み取るFileReaderまたはBufferedReaderを に作成します。

+0

私は最初の1論理を使用する場合、私はシングルトンのパターンを使用し、以前のエントリを格納するが、私は再びプログラムを実行するとき、私はその価値を失うだろうということですか?何か不足していますか? – Andy

+0

はい。これが懸念される場合は、2番目のオプションを使用する必要があります。 – Rudy

2

あなたは、ファイル内の実際のディレクトリ名の名前を格納することができますが

持続性が鍵となります(あなたは「前」のディレクトリ名になりますどのパラメータなしで再実行) 。 (店舗)の状態のアプリケーションの外で、が生き残ることができるどこでもを生き延びなければなりません。

+0

ありがとうございました。それは有用だった – Andy

関連する問題