2 つのテキスト ファイルをそれぞれ独自の行にマージしてい123456
ますabcdefg
。私が経験している現象は23456abcde
、同じ行に作成されたファイルであるため、ここで入力したとおりです。
私の質問は
1
最初のファイルからが書き込まれないのはなぜですか- なぜ彼らは自分のラインにいないのですか。
- なぜ「fg」が書かれていないのですか?(テキスト データは 7 行ですが、書き込みは 6 回のみです。これは、7 回の書き込みで英数字がまったく含まれていない「23456」が出力されるためです)。
.
public static String mergeRecords(String in1, String in2, String out) {
BufferedReader br1 = null;
BufferedReader br2 = null;
BufferedWriter bw1 = null;
try{
FileReader fr1 = new FileReader(in1);
FileReader fr2 = new FileReader(in2);
br1 = new BufferedReader(fr1);
br2 = new BufferedReader(fr2);
bw1 = new BufferedWriter(new FileWriter(out));
////File Writing
while(!(br1.readLine()==null)||(br2.readLine()==null)){
//alternating between the two filles
if((f%2)==0){
bw1.write(br1.read());
bw1.write(br1.readLine());
bw1.write(br1.readLine());
bw1.write(br1.readLine());
bw1.write(br1.readLine());
bw1.write(br1.readLine());
}
else{
bw1.write(br2.read());
bw1.write(br2.readLine());
bw1.write(br2.readLine());
bw1.write(br2.readLine());
bw1.write(br2.readLine());
bw1.write(br2.readLine());
}
/////
//File ALternator Value
f++;
}
bw1.close();
}
catch(IOException iox){
}
return "'mergeRecords' not yet implemented";
}