gpt4 book ai didi

Java,是否可以在不创建临时文件的情况下用字符串替换文件的第N行?

转载 作者:太空宇宙 更新时间:2023-11-04 07:48:30 26 4
gpt4 key购买 nike

我设法的唯一方法是创建一个临时文件来执行此操作,但这不是我想要的。有人可以提供一个示例,说明如何使用字符串替换文本文件的第 N 行而不创建临时文件。

提前致谢=)

最佳答案

您可以使用 RandomAccessFile...这可以同时读取和写入文件...因此您不需要创建临时文件...

想法是使用 readLine 跳过第 N-1 行..

然后计算第七行的字节数并与您的replaceString字节进行比较...

如果replaceStringBytes < SeventhLineBytes,则替换整个第七行字节并在第七行之后继续读取并移动文件中之前的字节...

如果replaceStringBytes > SeventhLineBytes,则创建字节差异缓冲区并在第七行之后存储附加字节...每次前进时继续用差异填充缓冲区...

这里有一个线程会给你一些提示......

Java - delete line from text file by overwriting while reading it

关于Java,是否可以在不创建临时文件的情况下用字符串替换文件的第N行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14905477/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com