簡體   English   中英

在while循環中替換字符串的最佳方法是什么

[英]What is the best way to replace string in while loop

在從文件中讀取行的while循環中替換字符串的最佳方法是什么?

while ((line = reader.readLine()) != null) {
 if (line.contains("blabla")) {
  line = line.replaceAll("blabla", "eee");
 }
 writer.write(line);
}

這是正確的方法,我想讀取所有文件行,並檢查每一行是否包含此單詞,只有一行包含此單詞,如果包含該單詞,則替換此單詞,而不檢查另一行。

您可以在一段時間內使用布爾值標志作為條件,並在if中更新它:

boolean found = false;
while ((!found) && ((line = reader.readLine()) != null)) {
 if (found = line.contains("blabla")) {
  line = line.replaceAll("blabla", "eee");
 }
 writer.write(line);
}

您可以使用替換此,

File your_file = new File(filePath)
String oldContent = “”;
BufferedReader reader = new BufferedReader(new FileReader(your_file));
String line = reader.readLine();

while (line != null)
{
 oldContent = oldContent + line + System.lineSeparator();
 line = reader.readLine();
}


String newContent = oldContent.replaceAll("wantToBeReplace", newString);

FileWriter writer = new FileWriter(your_file);
writer.write(newContent);
reader.close();
writer.close();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM