文件查找器Java程序:家庭作业

时间:2012-03-22 05:40:00

标签: java command-line

这是我的作业,但请先阅读我的问题说明。

我必须编写一个Java程序

a。 目录的路径将作为命令行参数传递给程序。然后程序将提示输入文件名并查找具有该名称的所有文件。 如果没有传递参数,程序应该从上一次运行中搜索目录。不要使用任何数据库。

b。 如果用户输入exit / quit / bye,程序将停止执行。

问题描述:

*我的问题是问题说我必须从命令行获取目录名称,如果没有传递,我必须先取入之前输入的目录。但是当我们通过命令行参数时,我们需要运行程序。这意味着每次我必须运行程序来传递命令行参数。 那么如果没有传递参数(如我不能使用数据库那样),我怎么能记住前一个。 *

2 个答案:

答案 0 :(得分:2)

您可以将实际目录名的名称存储在一个文件中(当您使用无参数重新运行时,它将是“之前的”目录名称)

Persistance 是关键。您必须持久(存储)应用程序之外的状态,它可以生存

答案 1 :(得分:1)

我真的不明白“程序应该从之前的运行中搜索目录”是什么意思。所以我将尝试回答两种可能性:

  1. 之前从同一会话中运行。 (刚刚开始运行)

      

    为了做到这一点,你应该创建一个存储所有的单例   在ArrayList中运行,并获取最新路径。 Memento模式也可能是另一种解决方案。

  2. 以前从相同/不同的会话运行(意味着可能在昨天,或上个月或去年运行),并且计算机可能已在每次运行之间关闭。

      

    为此,我认为您应该使用FileWriter或BufferedWriter编写默认文件的路径。然后创建   FileReader或BufferedReader从此文件中读取以获取最后一个文件   路径正在运行。