【Java入門】フォルダを監視する方法

Javaでフォルダを監視する方法について記載します。

フォルダを監視する方法

WatchService を使用して監視を行います。

Pathインタフェース の register メソッドを使用して、監視するフォルダのパスと、監視するイベント(作成、更新、削除)を登録します。

イベント

作成:StandardWatchEventKinds.ENTRY_CREATE
更新:StandardWatchEventKinds.ENTRY_MODIFY
削除:StandardWatchEventKinds.ENTRY_DELETE

また、イベントの監視方法には次のものがあります。

イベントの監視方法

No メソッド 処理
1 take() イベントを取得します。
フォルダに対するイベントがない場合は、イベントがあるまで待機します。
2 poll() イベントを取得します。
フォルダに対するイベントがない場合は、null を返します。
3 poll(long timeout, TimeUnit unit) イベントを取得します。
フォルダに対するイベントがない場合は、タイムアウトするまで待機します。

1. take メソッドを使用した方法

takeメソッドを使用すると、イベントが発生するまで待機します。

実行例

2. poll メソッド(引数なし)を使用した方法

poll メソッド(引数なし)を使用すると、イベントが発生していない場合は null を返します。

実行例

3. poll メソッド(引数あり)を使用した方法

poll メソッド(引数なし)は、イベントが発生していない場合、すぐに null を返しますが、poll メソッド(引数あり)を使用すると、イベントが発生していない場合、指定した待機時間後にタイムアウトします。

実行例

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする