У меня есть текстовый файл inventory.txt
с
cats, 10, 15
dogs, 10, 15
Я хочу запустить код, в котором я могу ввести cats
как replacee
и turtles, 5, 5
как replacer
, давая me,
turtles, 5, 5
dogs, 10, 15
однако, когда я это сделаю, все, что находится после первой запятой, остается в дополнение к моему replacer
. Я могу заменить cats
на ПРОСТО turtles
без 5, 5
, что дает мне
turtles, 10, 15
dogs, 10, 15
, но когда я пытаюсь добавить 5, 5
после первой запятой, выведите ниже.
Код
public void modifyItems() throws IOException {
File file = new File("src/inventory.txt");
String line = "";
String oldLine = "";
String replacee;
String replacer;
BufferedReader reader = new BufferedReader(new FileReader(file));
while ((line = reader.readLine()) != null) {
oldLine += line + System.lineSeparator();
}
System.out.println(oldLine);
reader.close();
System.out.println("enter the item you want to edit");
replacee = scan.next();
scan.nextLine();
System.out.println("enter the updated information");
replacer = scan.nextLine();
String newLine = oldLine.replaceAll(replacee, replacer);
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(newLine);
writer.flush();
writer.close();
}
Вывод
cats, 10, 15
dogs, 10, 15
enter the item you want to edit
cats
enter the updated information
turtles, 5, 5
Вывод текстового файла
turtles, 5, 5, 10, 15
dogs, 10, 15