【问题标题】:Java Fixed File Size operationJava 固定文件大小操作
【发布时间】:2013-10-08 17:14:07
【问题描述】:

在 Java 中使用 RandomAccessFile 我可以创建一个文件然后执行 setLength 现在假设我分配了1024 bytes 的长度。现在我写了512 bytes。 现在我又想写256 bytes而不改变文件大小并清除那些512 bytes

我不想在我的进程中间使用setLength(0) 以避免java.io.IOException: No space left on device

【问题讨论】:

    标签: java


    【解决方案1】:

    您可以使用搜索:

    file.setLength(1024);
    file.write(new byte[512]); //or some other 512 bytes
    //close and reopen later
    file.seek(512);
    //write 256 more bytes
    

    编辑:我认为你没有意识到RandomAccessFile 的精神。您可以将其创建为 512 字节并继续写入,这样它就可以在没有 setLength 调用的情况下隐式扩展。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 1970-01-01
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    相关资源
    最近更新 更多