Джава; Разрывы строк из входного текстового файла в выходной текстовый файл - PullRequest
0 голосов
/ 17 ноября 2011

Во-первых, это первый класс программирования, который я выбрал, поэтому я прошу прощения, если это довольно простая проблема. для домашнего задания нам нужно написать программу, которая сканирует текстовый файл, запрашивает у пользователя слова, помеченные знаком <>, а затем записывает результат в другой текстовый файл.

Проблема, с которой я столкнулся, заключается в том, что выходной файл записан в одной строке вместо сохранения разрывов строк во входном файле.

Например:

Ввод

выглядит как

этот текст.

вывод выглядит как этот текст.

Это код, который у меня есть в соответствующем методе.

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);
    }

Прошу прощения за любые ошибки в форматировании, опять же, это мой первый класс программирования.

Спасибо за вашу помощь

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

Вместо использования out.print вы можете использовать out.println, который делает то же самое, но добавляет символ новой строки в конец строки.Вы также можете вручную объединить символ новой строки (\n), где вы хотите вставить переносы.

0 голосов
/ 17 ноября 2011

Да, ответ Джонатана сработает.так что я голосую за Джонатана.

...