Как добавить новые строки при записи в файл с помощью Java?

#java #file-io

#java #file-io

Вопрос:

     String filepath=jTextField1.getText();
    FileReader fr;
    try {            
        fr = new FileReader("C:something.txt");
        BufferedReader br = new BufferedReader(fr);
        String sf="";
        while((br.readLine())!=null){
            sf=sf br.readLine() "n";               
        }
        jTextArea1.setText(sf);

    } catch (Exception ex) {
        Logger.getLogger(DesktopApplication1View.class.getName()).log(Level.SEVERE, null, ex);
    }
  

Выходной файл содержит запись прочитанных символов в одной строке по всей длине. Как получить файл с новыми строками?

Комментарии:

1. Люди были бы более склонны помогать вам, если бы вы согласились с вашими предыдущими вопросами.

2. в качестве наилучшей практики используйте StringBuilder / StringBuffer вместо добавления к строке.

3. Это не файл. В этом коде нет выходного файла.

Ответ №1:

Согласно вашему коду, вы ЧИТАЕТЕ файл, а затем выводите текст в то, что выглядит как текстовый компонент swing. Я не вижу, где это объявляется, поэтому я не могу точно сказать, что это за компонент. Вам нужно настроить свой текстовый компонент на многострочный.

Ответ №2:

Вместо "n" используйте System.getProperty("line.separator") , чтобы убедиться, что вы используете правильный разделитель строк для вашей операционной системы.

Как предложил Манодж, используйте StringBuilder вместо объединения String .

И, как уже предлагал maple_shaft, вам нужно настроить ваш Swing Text -компонент на прием многострочной строки.