★★Java質問・相談スレッド143★★
レス数が950を超えています。1000を超えると書き込みができなくなります。
0970デフォルトの名無しさん
2011/03/22(火) 15:09:34.80> それとも、書き込み前のファイル末尾から書き込まれるのでしょうか?
少なくともRandomAccessFile#write(int)、RandomAccessFile#write(byte[])の
API仕様の記述に反する振る舞いだから基本的にないと思っていい。
> 書き込み前のファイル末尾〜書き込み開始位置までは0で埋められるのでしょうか?
API仕様には直接的な記述はなかったはず。
RandomAccessFile#setLength(long) には
> length により返されたファイルの現在の長さが newLength 引数よりも小さい場合、
> ファイルは拡張されます。この場合、ファイルの拡張部分の内容は定義されていません。
って書いてあるから、これに準じた振る舞いをするんじゃないかと。
ちなみに、Windowsで元々大きかったファイルを再拡張した場合に、
元々の内容がそのまんま残ってたりする事もある。
レス数が950を超えています。1000を超えると書き込みができなくなります。