以下は、私が試していたテストTimertaskクラスです。基本的には、ファイルが変更されたときにtimertaskが監視し、いくつかのメソッドを実行します。私は、timertaskが実行されている限り、 "ファイルの変更が発生するのを待っている"など、ユーザにメッセージを出力します。コマンドはどこに入力する必要がありますか?以下は私のコードです。Java - TimerTaskが実行されている間、メッセージを出力します。
ありがとうございます!
public class FileWatcherTest {
static int count = 3;
static int i = 0;
public static void main(String[] args) {
final Timer timer = new Timer();
System.out.println("Starting Timer " + timer.toString());
TimerTask task = new FileWatcher(new File("c:/temp/text.txt")) {
protected void onChange(File file) {
i++;
System.out.println("Executing iteration " + i);
System.out.println("File " + file.getName() +
" have change !");
// code to cancel timer
if (i >= count) {
System.out.println("Finished Iterations");
System.out.println("Stopping Timer");
timer.cancel();
System.out.println("Stopped Timer");
} else {
}
}
};
// repeat the check every second
timer.schedule(task, new Date(), 1000);
}
}
「TimerTaskタスク=新しいFileWatcher」とはどういう意味ですか? – njzk2
これは、TimerTaskを拡張する抽象クラスです。基本的にファイルの変更日を監視します。 – spry
いつあなたは 'onChange'を呼びますか? – njzk2