У меня уже есть два текстовых файла, которые я хочу взять из них аналогичные данные и объединить эти новые данные в один файл.
Например:
//info1.txt
ID,Name,LastName,WorkPlace
12345,James,Jone,Us
34563,Mike,Smith,Canada
34523,Matt,jk,Uk
//info2.txt
ID,Proj1,Proj2,Proj3,Assignment,Final
34563,60,100,75,89,50
34523,70,56,75,100,70
12345,100,90,75,89,100
Мне удалось скопировать информацию этих двух текстовых файлов в один текстовый файл, но я не смог сравнить каждый элемент в каждой строке с альтернативой в другом файле!
Мой код:
import java.io.*;
public class Merge {
public static void main(String[] args) throws IOException {
//PrintWriter object for info3.txt
PrintWriter pw = new PrintWriter("info3.txt");
//BufferedReader object for info1.txt & info2.txt
BufferedReader br1 = new BufferedReader(new FileReader("info1.txt"));
BufferedReader br2 = new BufferedReader(new FileReader("info2.txt"));
String line1 = br1.readLine();
String line2 = br2.readLine();
//loop to copy each lines of the two files to info3.txt
while (line1 != null || line2 !=null) {
if(line1 != null) {
pw.println(line1);
line1 = br1.readLine();
}
if(line2 != null) {
pw.println(line2);
line2 = br2.readLine();
}
}
pw.flush();
br1.close();
br2.close();
pw.close();
}
}
Это то, что я ищу в результате: (Примечание: "P_Average" - это среднее значение трех Projs в файле "info2.txt").
//merged_file.txt
ID,Name,P_Average,Assignment,Final,WorkPlace
12345,James,88.3,89,100,Us
34523,Matt,67.0,100,70,Uk
34563,Mike,78.3,89,50,Canada