2

このような複数の質問を検索して調べましたが、私の質問は私が見つけたものとはまったく異なります. 私はJava Docsを見てきました。

このcファイルに相当するものを開くにはどうすればよいですか:

stream1 = fopen (out_file, "r+b");

ファイルから部分的な読み取りを行うと、ファイル内のバイト数に関係なく、最初の書き込みによって次の読み取りで EOF が返されます。

基本的に、それを行わないファイル I/O ストリームが必要です。私がやろうとしていることの全体的な目的は、現在のファイルの既存のファイルのバイトを置き換えることです。Read->Write を実行する前に、コピーで実行したり、コピーを作成したりしたくありません。

4

2 に答える 2

7

RandomAccessFileを使用できます。

于 2012-04-20T19:30:55.067 に答える
1

Perceptionが言及しているように、RandomAccessFileを使用できます。また、状況によっては、FileChannelの方がうまく機能する場合があります。私はこれらを使用してバイナリファイルデータを処理し、大きな成功を収めました。

編集:を使用して、RandomAccessFileオブジェクトからFileChannelを取得できますgetChannel

于 2012-04-20T19:47:01.037 に答える