Здравствуйте.
Почитал я решения других участников. (Разумеется, после того как попробовал сам решить) и не нашел основных причин невалидации
Проверял на работоспособность, немного дебажил. Вроде все ок. Подскажите пожалуйста в чем проблема...
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) throws IOException
{
Solution solution = new Solution();
String f1;
String f2;
InputStream inputStream = System.in;
Reader reader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(reader);
f1 = bufferedReader.readLine();
f2 = bufferedReader.readLine();
inputStream.close();
reader.close();
bufferedReader.close();
try
{
File file = new File(f1);
FileReader fileReader = new FileReader(file);
String result = "";
String s = "";
// Читаем из 1-ого файла
BufferedReader bufferedReader1 = new BufferedReader(fileReader);
while ((result = bufferedReader1.readLine()) != null)
{
allLines.add(result);
}
result = null;
fileReader.close();
s = "";
// Читаем из 2-ого файла
File file1 = new File(f2);
FileReader fileReader1 = new FileReader(file1);
BufferedReader bufferedReader2 = new BufferedReader(fileReader1);
while ((result = bufferedReader2.readLine()) != null)
{
forRemoveLines.add(result);
}
result = null;
fileReader1.close();
s = "";
}
catch (FileNotFoundException exc)
{
exc.printStackTrace();
}
try
{
solution.joinData();
}
catch (CorruptedDataException exc)
{
exc.printStackTrace();
}
}
public void joinData() throws CorruptedDataException
{
String eq;
boolean del = false;
for (int i = 0; i < (allLines.size()-1); i ++)
{
eq = allLines.get(i);
for (int j = 0; j < (forRemoveLines.size()-1); j ++)
{
if (forRemoveLines.get(j).equals(eq))
{
allLines.set(i,null);
allLines.remove(i);
del = true;
}
}
}
if (!del)
{
allLines.clear();
throw new CorruptedDataException();
}
}
}