私は、1つのテキストファイルから行を連続して読み込み、それらの行を処理するデーモンを設計しています。デーモンが実行されていない間に行がテキストファイルに書き込まれた場合、ファイル名に関係なく、処理された最後の行を追跡する良い汎用目的の方法は何ですか?テキストファイルで最後の行を読み込む最良の方法
多くの場合、ファイルはアーカイブされ、その場所に新しい空のファイルが作成されます。デーモンは、アーカイブが行われるように停止されます。
私の最初のアイデアは、複雑すぎるように思えますが、最後に正常に処理されたレコードのハッシュと行番号を計算して保存することです。次に、デーモンが再び開始されると、その行番号まで実行し、ハッシュを計算します。ハッシュが一致する場合は、次のレコードの処理を続行します。ハッシュが一致しない場合は、最初にファイルを開始します。これは、これが新しいファイルであると言うためです。
私は、ログファイルアナライザや、私が暴露していないテキストブックの中で使用されている、良い汎用技術があると感じています。
私は、単に行を格納する前にそれをハッシングすると思うとは思えません。とても簡単です。私はコンテキストマネージャーのアイデアについて興味がある。コンテクストマネージャは何をするために使われるのですか?私はまだそれらのうちの1つを実際に使用しています。 – Jeremy
私はいくつかの例のコードを追加しましたが、特に私の解決策が好きではありません。うまくいけば、contextmanagerの例はすべて同じように面白いと思います。 –