Переписывание определенных строк в текстовом файле и добавление остальных

#java #filewriter #bufferedwriter

#java #filewriter #bufferedwriter

Вопрос:

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

Вот как я сохраняю свой текст (я пытался добавить):

 public static void saveText (String[] studentArray, String assignArray [], String fileName, int numStudents) throws IOException {
    File dumpFile = new File(fileName   ".txt");
    if (!dumpFile.exists()) {
        dumpFile.createNewFile();
    }

    FileWriter fw = new FileWriter (dumpFile, true);
    BufferedWriter bw = new BufferedWriter (fw);

    bw.write(Integer.toString((int)numStudents));
    bw.newLine();

    for (int i = 0; i < studentArray.length; i  ) {
        bw.write(studentArray[i]);
        bw.write(", ");
    }

    for (int i = 0; i < assignArray.length; i  ) {
        bw.write(assignArray[i]);
        bw.write(", ");
    }

    bw.close();
    System.out.println("SUCCESFULLY DUMPED FILE");

}
  

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

1. В чем ваша реальная проблема? Что вы ожидаете, и что происходит на самом деле?

2. Мои извинения, я вижу, как это может показаться непонятным. Я хочу иметь возможность добавлять информацию об учениках и заданиях (массивы) в этот файл. Однако я не хочу добавлять количество учащихся. Я хочу, чтобы количество учащихся обновлялось путем замены старого числа.

Ответ №1:

Вам нужно использовать RandomAccessFile, если вы хотите вставить в свой файл. Я никогда на самом деле не использовал это, потому что, честно говоря, мне проще переписать существующий файл.

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

1. Дело в том, что я использую текстовый файл в качестве базы данных для хранения и доступа к информации о студентах. Спасибо за ответ, хотя! Я попробую использовать RandomAccessFile.