-1

テキスト ファイルに含まれる 1 行のテキストの変更を監視しようとしています。ファイルは常に削除され、同じ名前とパスで作成されますが、内容はめったに変更されません。

ファイルの内容が変更された場合にシステムがコンソールに出力するように、if ステートメントを作成しようとしています。

このスタック オーバーフローの質問を見て、このページにある java-diff-utils の例を使用してみましたが、問題を解決するために実装する方法が見つかりませんでした。

4

2 に答える 2

0

「高レベル」のアドバイス: できることは...

  • アプリの初期化時にカスタム オブジェクトでファイルの内容を使用し、それを静的変数に格納します。
  • 上記のオブジェクトのプロパティを定義し、ファイルの内容を表す文字列を返します
  • TimerTask を使用して、ファイルを表すカスタム オブジェクトの新しいインスタンスを定期的にインスタンス化し、...
  • ... 2 つの String プロパティを比較して、等しくない場合は後者を出力し、静的変数の値を新しくインスタンス化されたオブジェクトで上書きできるようにします

これは、反復タスクやファイル比較を処理するための専門的な方法ではないことに注意してください。これは、ドラフトの方向性を示すことを目的としています。

于 2013-05-14T21:10:20.337 に答える
0

元のファイルの MD5 を生成することから始め、バックグラウンド スレッドを使用して MD5 を再計算し、元のファイルと比較します。ハッシュが変更されると、ファイルの内容が変更されます。

MD5 ハッシュの例をご覧ください

Java 7 を使用している場合は、Watcher Serviceを使用してファイルへの変更を監視できます。これはスレッドを置き換えます

于 2013-05-14T22:20:02.973 に答える