gpt4 book ai didi

java - 在文件中搜索字符串并在上面插入内容

转载 作者:行者123 更新时间:2023-11-29 05:52:23 25 4
gpt4 key购买 nike

我尝试在 txt 文件中搜索字符串并在其上方插入一些特定内容。遗憾的是,输出看起来与我预期的完全不同。

有人可以给我提示吗?
这就是我的进展!

    String description= "filename.txt";
String comparison=" return model;";
RandomAccessFile output = null;
try
{
output = new RandomAccessFile(description, "rw" );
String line = null;
while ((line = output.readLine()) != null) {
if (line.equals(comparison)){
//System.out.println("alt: "+line);
output.seek(output.getFilePointer()-line.getBytes().length);
output.writeChars("new stuff; \n");
//System.out.println("new: "+output.readLine());
}
}
}
catch ( IOException e ) {
e.printStackTrace();
}
finally {
if ( output != null ){ try { output.close(); } catch ( IOException e ) { e.printStackTrace(); }}
}

这是我尝试读取的文件:

/*filename.txt*/
some longer content ~ 100kB

return model;

further content

这就是我希望得到的

/*filename.txt*/
some longer content ~ 100kB

new stuff;

return model;

further content

最佳答案

文件不支持在文件末尾插入或删除内容。 (这不是 Java 的限制,而是操作系统的限制)

要插入文本,您必须重写文件(至少从您要更改的那一点开始) 最简单的解决方案是将内容复制到临时文件,根据需要更改/插入或删除,如果需要则替换原始文件这是成功的。

关于java - 在文件中搜索字符串并在上面插入内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13416296/

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