В консоль выводит, а валидатор не принимает.. Что не так?
package com.javarush.task.task17.task1721;
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/*
Транзакционность
Сделать метод joinData транзакционным, т.е. если произошел сбой, то данные не должны быть изменены.
1. Считать с консоли 2 имени файла.
2. Считать построчно данные из файлов. Из первого файла - в allLines, из второго - в forRemoveLines.
В методе joinData:
3. Если список allLines содержит все строки из forRemoveLines, то удалить из списка allLines все строки,
которые есть в forRemoveLines.
4. Если условие из п.3 не выполнено, то:
4.1. очистить allLines от данных
4.2. выбросить исключение CorruptedDataException
Метод joinData должен вызываться в main. Все исключения обработайте в методе main.
Не забудь закрыть потоки.
*/
public class Solution {
public static List<String> allLines = new ArrayList<String>();
public static List<String> forRemoveLines = new ArrayList<String>();
public static void main(String[] args) {
try {
BufferedReader readerName = new BufferedReader(new InputStreamReader(System.in));
String fileName1 = readerName.readLine();
String fileName2 = readerName.readLine();
readerName.close();
String scr;
BufferedReader reader1 = new BufferedReader(new FileReader(fileName1));
while ((scr = reader1.readLine()) != null) {
allLines.add(scr);
}
reader1.close();
String scr1;
BufferedReader reader2 = new BufferedReader(new FileReader(fileName2));
while ((scr1 = reader2.readLine()) != null) {
forRemoveLines.add(scr1);
}
reader1.close();
} catch (IOException e) {
e.printStackTrace();
}
Solution sl = new Solution();
try {
sl.joinData();
} catch (IOException e) {
e.printStackTrace();
}
}
public void joinData() throws CorruptedDataException {
boolean b = false;
for (String s : allLines){
for (String d : forRemoveLines) {
if (s.equals(d)) {
b = true;
}
}
}
if (b) {
allLines.removeAll(forRemoveLines);
// System.out.println("isWorking");
} else {
allLines.clear();
// System.out.println("File is clear");
throw new CorruptedDataException();
}
}
}