Buffered Reader

212
12 октября 2021, 11:10

считываю информацию из файла, после этого агрегирую её и записываю в отдельные файлы. Однако при записи возникает проблема, почему-то программа считывает информацию через строку. т.е. 2, 4, 6 и т.д. строки записываются в файл, а 1, 3, 5 и т.д. не пишутся. Код:

import java.io.*;
public class Main {
    public static void main (String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader("c:\\0\\15k.txt"));
        int i = 0;
        BufferedWriter bw = new BufferedWriter(new FileWriter("c:\\0\\1\\" + i + ".txt"));
        while(br.readLine() != null) {
            String s = br.readLine();
            if (s != null) {
                String answer = "агрегация";
                bw.write(answer);
                i++;
                bw.close();
                bw = new BufferedWriter(new FileWriter("c:\\0\\1\\" + i + ".txt"));
            }
        }
        br.close();
    }
}

что я делаю не так?

Answer 1

Вы читаете две строки на каждую итерацию цикла.

while(br.readLine() != null) {

String s = br.readLine();

Исправить можно так:

String tmp;
while((tmp = br.readLine()) != null) {
    String s = tmp;
}
READ ALSO
не пойму что означает эта ошибка

не пойму что означает эта ошибка

написал код, сделал конфиг, запускаю из командной строки, а он мне выдает следующее

119
Как в Android Studio закрепить положение component tree?

Как в Android Studio закрепить положение component tree?

Так получилось, что после некоторых действий с android studio элемент component tree стал небольшим независимым окошком с возможностью передвижения,...

205
Не знаю как решить ошибку ERROR 1045 (28000): Access denied for user

Не знаю как решить ошибку ERROR 1045 (28000): Access denied for user

Не знаю как решить ошибку , вообще что надо делать

111
Поиск дубликатов

Поиск дубликатов

Я пытаюсь выбрать дубликаты записей из mysql, суть в следующем: Есть таблица с данными, основные ip, authНужно найти все записи где при одинаковом...

92