用JAVA编写的读取一个文本文件的一行之后读取另一个文本文件的另一行,逐行交叉读取并生成新的文本文件

来源:互联网 发布:linux 乌班图语言设置 编辑:程序博客网 时间:2024/04/29 23:54

 

代码如下:

 

import java.io.*;

public class ReadTxt {

 
 public static void execute() throws IOException {
  
  BufferedReader br1 = new BufferedReader(new InputStreamReader(new FileInputStream("D:/1.txt")));
  BufferedReader br2 = new BufferedReader(new InputStreamReader(new FileInputStream("D:/2.txt")));
  BufferedReader br11 = new BufferedReader(new InputStreamReader(new FileInputStream("D:/1.txt")));
  BufferedReader br22 = new BufferedReader(new InputStreamReader(new FileInputStream("D:/2.txt")));
  BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("D:/3.txt")));
  
  int count1 = 0;
  int count2 = 0;
  String value1 = br1.readLine();
  String value2 = br2.readLine();

  String value11 = br11.readLine();
  String value22 = br22.readLine();

  
  while( value1 != null)
  {
   count1++;
//   System.out.println(value1);
   value1 = br1.readLine();
  }
//  System.out.println(count1); 
  
  while( value2 != null)
  {
   count2++;
//   System.out.println(value2);
   value2 = br2.readLine();
  }
//  System.out.println(count2); 
  
  int count=(count1>count2?count1:count2);
//  System.out.println(count);
  
  while (count != 0 ) {
   System.out.println(value11);
   System.out.println(value22);
   if ( value11 != null ) {
    bw.write(value11, 0, value11.length());
    bw.newLine(); 
   }
   if (value22 != null)
   { 
    bw.write(value22, 0, value22.length());
    bw.newLine();
   }
   bw.flush();
   value11 = br11.readLine();
   value22 = br22.readLine();
   count--;
  }
  
  br1.close();
  br2.close();
  br11.close();
  br22.close();
  bw.close();
 }
 
 public static void main(String[] args)  {
  
  try {
   ReadTxt.execute();
  } catch (IOException e) {
   e.printStackTrace();
  }
   
 }

 

}

本人JAVA水平有限,请网友拍砖!

 

运行结果如下:

 

1.txt

 

 

 

2.txt

 

 

 

 

 

3.txt