Я хочу:
- Чтение в двух файлах
- Разделить файлы на отдельные строки
- Сравните два списка строк и получите строки, уникальные для файла.
В настоящий момент я сталкиваюсь с проблемой поиска способа вызова двух методов, используемых для вызова файлов (по одному для каждого файла), к одному и тому же методу для сравнения.
Оба метода используют оператор try-catch-while, и если я пытаюсь прочитать все записи после оператора while, отображается только один, а не весь список.
Есть ли способ отправить части обоих методов в качестве параметров для одного нового метода?
Вот код для программы. Я знаю, что есть проблемы с тем, как я выполняю программу, но я делаю это только так, как меня учили.
File mainEmails = new File("Testrun.txt");
Scanner inputScanner = null;
int counter = 1;
String fullName = null;
String position = null;
String companyName = null;
String telNumber = null;
String emailAddress = null;
try
{
inputScanner = new Scanner(mainEmails);
}
catch(FileNotFoundException e)
{
System.out.println("File has not been found.");
}
while (inputScanner.hasNextLine())
{
String nextLine = inputScanner.nextLine();
String [] splitFile = nextLine.split(",");
for (int i = 0; i <splitFile.length;i++)
{
if(i==0)
{
fullName = splitFile[0];
}
else if(i==1)
{
position = splitFile[1];
}
else if(i==2)
{
companyName = splitFile[2];
}
else if(i==3)
{
telNumber = splitFile[3];
}
else if(i==4)
{
emailAddress = splitFile[4];
}
else if(splitFile[i] == null)
{
System.out.println("You have failed!");
}
}
}
public static void deletionList()
{
File deletionEmails = new File("Testrun1.txt");
Scanner inputScanner1 = null;
String deletionfullName = null;
String deletionposition = null;
String deletioncompanyName= null;
String deletiontelNumber = null;
String deletionemailAddress = null;
try
{
inputScanner1 = new Scanner(deletionEmails);
}
catch(FileNotFoundException e)
{
System.out.println("File has not been found.");
}
while (inputScanner1.hasNextLine())
{
String deletionnextLine = inputScanner1.nextLine();
String [] deletionsplitFile = deletionnextLine.split(",");
for (int i = 0; i <deletionsplitFile.length;i++)
{
if(i==0)
{
deletionfullName = deletionsplitFile[0];
}
else if(i==1)
{
deletionposition = deletionsplitFile[1];
}
else if(i==2)
{
deletioncompanyName = deletionsplitFile[2];
}
else if(i==3)
{
deletiontelNumber = deletionsplitFile[3];
}
else if(i==4)
{
deletionemailAddress = deletionsplitFile[4];
}
else if(deletionsplitFile[i] == null)
{
System.out.println("You have failed!");
}
}
}
}
То, что я пытаюсь сделать, это взять fullName, emailAddress из первого разбиения и deletetionfullName и deletionemailAddress из второго разбиения и сравнить первое и второе каждого соответственно. В каждом файле будет несколько полей, и меня интересуют только поля fullName и emailAddress.