Опять вроде результат верный, проверил на файлах, но не принимает.
package com.javarush.task.task17.task1721;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
/*
Транзакционность
*/
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 {
new Solution().joinData();
} catch (CorruptedDataException ex) {
ex.printStackTrace();
} catch (Exception ex) {
ex.printStackTrace();
}
}
public void joinData() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String file1 = br.readLine();
String file2 = br.readLine();
br.close();
BufferedReader b1 = new BufferedReader(new FileReader(file1));
while (b1.ready()) {
allLines.add(b1.readLine());
}
b1.close();
BufferedReader b2 = new BufferedReader((new FileReader(file2)));
while(b2.ready()) {
forRemoveLines.add(b2.readLine());
}
b2.close();
if (allLines.containsAll(forRemoveLines))
allLines.removeAll(forRemoveLines);
else {
allLines.clear();
throw new CorruptedDataException();
}
}
}