Member 13959817 Ответов: 2

Напишите файл .txt с несколькими массивами.


Как бы я записал введенную информацию в файл .txt? Он вводится в 40+ массивов.

Что я уже пробовал:

//output
            report = new PrintWriter (new FileWriter (name [i] + "_Results.txt"));
            while(name[i].compareTo("quit")!=0)
            {
            report.print(name[i]);
            report = in.readLine();
            }
            report.close();

2 Ответов

Рейтинг:
0

OriginalGriff

Почему вы пытаетесь перезаписать PrintWriter каждый раз, когда вы идете по кругу?

Я предлагаю вам вернуться к вашим записям курса и перечитать ethm - вы, кажется, совершенно неправильно поняли...

И если вы хотите, чтобы каждое имя было в отдельной строке, то попробуйте println вместо print.


Member 13959817

Я хочу, чтобы он генерировал новый отчет каждый раз, когда он зацикливается. Теоретически, программа shoudl генерирует 10 отчетов (по одному на человека с именем, адресом, школой, классными отметками)

OriginalGriff

Затем вам нужно создавать новый PrintWriter каждый раз вокруг цикла, а не один вне его.

Member 13959817

В данный момент он находится внутри цикла, но файл, который он печатает, пуст. Как бы я исправил эту ошибку?

OriginalGriff

Нет, это не так - вы создаете его один раз, вне цикла.
Подсказка: ищите волшебное ключевое слово "new" ...

Member 13959817

Я это делаю в своей Большой петле for. У меня есть цикл для запуска массивов 10 раз

OriginalGriff

:вздыхать:
Посмотри на свой код, пожалуйста. Сколько раз вы используете ключевое слово "new" для создания файла и связанных с ним бит-Н-бобов?

Рейтинг:
0

Member 13961392

Привет,

Может быть, это поможет вам в дальнейшем:

 string[] lines = { $"Test1'", "Test", "Test", "Test", Test", "Test", "Test"};
System.IO.File.WriteAllLines(@"C:\Test.txt", lines);


Переименовать "C:\Test.txt-на твой путь.