我想要替換.txt文件中的一行字符串。 然而,當我運行我的代碼,程序只是刪除一切,包括空格 這行是我的代碼:是否可以在replaceAll上使用字符串變量?
public static void main(String[] args) {
try {
String str;
String temp = "";
String oldtext = "";
BufferedReader br = new BufferedReader(new FileReader("file.txt"));
while ((str = br.readLine()) != null) {
oldtext += str + "\r\n";
if (str.equals("I drink Java")) {
temp = br.readLine();
System.out.println(temp);
}
}
br.close();
String newtext = oldtext.replaceAll(temp, "Hello");
FileWriter writer = new FileWriter("file.txt");
writer.write(newtext);
writer.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
file.txt的
I drink Java
I sleep Java
This is test string 1
This is test string 20000
我試圖取代「我通過使用字符串變量temp將睡眠Java「行改爲」Hello「。我知道它的工作原理是使用String newtext = oldtext.replaceAll("I sleep Java","Hello");
但我想知道是否有可能按照我的方式進行。如果是的話,誰能告訴我我在哪裏錯了? 謝謝! :)
如果您想使用正則表達式,replaceAll()很有用。你沒有。所以只需使用replace()。 –
你有沒有得到它的工作? – ItamarG3