在Java中,如何将两个文件的特定列复制到一个文件中?

在Java中,如何将两个文件的特定列复制到一个文件中?,java,merge,text-files,Java,Merge,Text Files,我有两个大小不同的文本文件,我想将它们复制/合并到一个具有不同列名的新文件中,并且只复制特定列 例如: //file1.txt Source Target Value A B 0.5 A C 0.1 B A 0.25 C B 0.05 C D 0.25 C E 0.5 D A 0.4 E A 0.75

我有两个大小不同的文本文件,我想将它们复制/合并到一个具有不同列名的新文件中,并且只复制特定列

例如:

//file1.txt
Source  Target  Value
A       B       0.5
A       C       0.1
B       A       0.25
C       B       0.05
C       D       0.25
C       E       0.5
D       A       0.4
E       A       0.75

//file2.txt
Source  Target  Value
A       B       0.3
B       C       0.5
B       A       0.75
C       B       0.01
C       D       0.25
D       C       0.5
D       E       0.25
E       A       0.4
E       C       0.5
F       A       0.1
因此,预期结果将是:

//file3.txt
SourceFile1  TargetFile1  SourceFile2  TargetFile2
A            B            A            B
A            C            B            C
B            A            B            A
C            B            C            B
C            D            C            D
C            E            D            C
D            A            D            E
E            A            E            A
                          E            C
                          F            A

我已经尝试合并它们,但结果仍然不符合预期。是否可以按预期结果合并它们?提前谢谢。

您的逻辑结构应该是这样的:

open file1
open file2
open output
while  file1.hasNext AND file2.hasNext
    if file1.hasNext
       rec1 = parse(file1.next)
    end if
    if file2.hasNext
       rec2 = parse(file2.next)
    end if
    build outputrec using data from rec1 and rec2
    write outputrec to output
 end while
 close file1
 close file2
 close output

你是如何尝试合并它们的?你得到的结果是什么?可能是