我有一个需要输出到文件的Java程序。
此输出文件具有固定的结构,例如标题, START 行,我的输出, END 行和< EM>页脚
每次我运行程序时,我都希望它在这些START-END部分之间写入输出。如果有一些文字,我想覆盖它。
到现在为止,我正在逐行阅读,直到我检测到 START 行,然后我写出输出。正如我之前所说,输出后有一条“END”线。
我怀疑的是,如何为每次执行(新输出)覆盖 START 和 END (旧输出)之间的文本。
答案 0 :(得分:1)
你熟悉RandomAccessFile课吗?我假设你在Header + START和END + Footer标记之间写了一个可变长度的正文?这意味着您不能只覆盖正文部分并期望拖尾字节。
也许最容易实现的是你如何开始实现它。
这可能是实现此目的的一种方法,或者只是将所有内容读取到RAM查找索引,使用新内容覆盖文件。如果RAM不是问题,这很好。