2012-01-10 4 views
5

サーバー(.txtファイル)に500 MBのログファイルがあります。私の必要条件は、最後の1 MBのデータだけです。私たち全員が知っているように、Javaコードを使用してファイル全体を読み取ると問題が発生し、アプリケーションのユーザビリティの問題が発生する可能性があります。最後の1 MBのデータを取得する方法がわからず、まだコーディングを開始していません。誰でも私に提案をお願いできますか?事前にJavaコードを使用してテキストファイルの最後の1 MBデータを取得するには?

おかげで、

ラジ

+0

あなたには、いくつかのロギングフレームワークを使用している場合は、*設定の 'MaxFileSize' *オプションを使用します。 500MBのログファイル*が大きすぎます*。 –

+0

可能性のある複製http://stackoverflow.com/questions/246744 –

+0

@HarryJoyファイルを使用することが心配な場合は、大きすぎる可能性があります。一部のプロジェクトでは、複数のGBログファイルが問題になる必要はありません。 –

答えて

1

ランダムアクセスファイルを使用し、最後にseek()メソッドを使用してカーソルをマイナス1MBに設定する必要があります。 java.io.RandomAccessFile javadoc、特にseek()コメント...

HTH はジェローム

+0

それは私の問題を解決することを願って..ドキュメントを読むことを開始..ヘルプThansk –

1

私は500メガバイトは、サーバ(.txtファイル)でログファイルを持っています。私の必要条件は、最後の1 MBのデータだけです。

最後に1 MBをスキップして読み込むことができます。しかし、あなたは不完全な行を得るかもしれません。

Javaコードを使用してファイル全体を読み取ると、アプリケーションのユーザビリティの問題が発生する可能性があります。

コードを誤っている場合のみです。これを行う良い読書はありません。ただし、最後の1 MBだけが必要であることがわかっている場合は、500 MBを読み込むための読み込みはありません。

最後の1 MBデータを取得する方法はまだわかりませんが、まだコーディングを開始していません。誰でも私に提案をお願いできますか?

コーディングを開始するには、ドキュメント、esp the skip機能をお読みください。

+0

あなたの提案に感謝ピーター –

関連する問題