Во-первых, это первый класс программирования, который я выбрал, поэтому я прошу прощения, если это довольно простая проблема. для домашнего задания нам нужно написать программу, которая сканирует текстовый файл, запрашивает у пользователя слова, помеченные знаком <>, а затем записывает результат в другой текстовый файл.
Проблема, с которой я столкнулся, заключается в том, что выходной файл записан в одной строке вместо сохранения разрывов строк во входном файле.
Например:
Ввод
выглядит как
этот текст.
вывод выглядит как этот текст.
Это код, который у меня есть в соответствующем методе.
public static void createMadLib(Scanner console) throws FileNotFoundException {
Scanner input = getInput(console);
System.out.print("Output file name: ");
PrintStream out = new PrintStream(new File(console.nextLine()));
System.out.println();
String text = input.next();
while (input.hasNext()){
if (text.startsWith("<")){
text = text.substring(1, text.length()-1);
text = text.replace("-"," ");
if ((text.startsWith("a"))||(text.startsWith("e"))||(text.startsWith("i"))||(text.startsWith("o"))||(text.startsWith("u"))){
System.out.print ("Please type an " + text + ": ");
text = (console.nextLine());
}else {
System.out.print ("Please type a " + text + ": ");
text = (console.nextLine());
}
}
out.print(text + " ");
text = input.next();
}//ends while loop
out.print(text);
prompt(console);
}
Прошу прощения за любые ошибки в форматировании, опять же, это мой первый класс программирования.
Спасибо за вашу помощь