gpt4 book ai didi

java - 读取特定行并更改该行 Java 中的字符串

转载 作者:行者123 更新时间:2023-12-02 07:13:48 25 4
gpt4 key购买 nike

我有一个名为“Hello.txt”的文本文件其内容如下:

dog
cat
mouse
horse

我想要有一种方法来检查当读者读取行时,如果该行等于 2,它将用“hen”替换“cat”并写回同一个文件。到目前为止我已经尝试了很多,但我不知道在哪里放置条件来检查 line=2,然后它会进行替换。我的代码是:

import java.io.*;

public class Python_Read_Replace_Line
{
public static void main(String args[])
{
try
{
File file = new File("C:\\Hello.py");
LineNumberReader lnr = new LineNumberReader(new FileReader(new File("C:\\Hello.txt")));
int numlines = lnr.getLineNumber();

BufferedReader reader = new BufferedReader(new FileReader(file));
String line = "", oldtext = "";
while((line = reader.readLine()) != null)
{

oldtext += line + System.lineSeparator();

}
reader.close();

String newtext = oldtext.replaceFirst("cat", "hen");

FileWriter writer = new FileWriter("C:\\Hello.txt");
writer.write(newtext);
writer.close();
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}
}

文件内容应该是这样的:

 dog
hen
mouse
horse

我上面发布的代码有效,因为它只是用母鸡替换了猫。我想要一个条件(行号=2),然后它替换它。

最佳答案

类似这样的吗?

int lineCount = 1;
while((line = reader.readLine()) != null)
{
if (lineCount == 2)
oldText += parseCommand.replaceFirst("\\w*( ?)", "hen\1")
+ System.lineSeparator();
//oldText += "hen" + System.lineSeparator();
else
oldtext += line + System.lineSeparator();
lineCount++;
}

Reference .

关于java - 读取特定行并更改该行 Java 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15207995/

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