私はjavaに移植したい小さな.Netライブラリを持っています。このライブラリの要件の1つは、ディスク上のファイルに状態をシリアル化する必要があり、ライブラリの他のインスタンスがこのファイルにアクセスすることはできませんが、ほとんどが独自のインスタンスを作成できるように、このファイルは「オープン」のままにしておく必要があるということです。 C#ではFileShare.Noneで開かれたFileStreamを使用して、他の人がファイルを読み書きすることを防ぐことができます。 FileStreamを保持すると、Flush()を呼び出してディスクに書き込み、SetLength(..)を使用してファイルに読み書きできます。コンテンツを書き込んだ後に既存のファイルを短くできます。javaと同等の.net FileStream
Javaでは、どのクラスが最も類似したプロパティを提供するかはわかりません。 RandomAccessFileは私の最高の賭けですが、私はJavaに精通していないので、RandomAccessFileでいくつかの警告やクラスを見落としているかもしれません。
http://stackoverflow.com/questions/6842028/java-how-to-read-and-ファイルを同時に書き込む –