繁体   English   中英

如何使用 Java 将文件中的特定行复制到新文件

[英]How to copy upto a specific line in a file to a new file using Java

这是我用来将记事本文件内容复制到其他记事本文件的 Java 代码。 在这里,我想这样做,假设我在记事本文件中有 600000 行,而我只想从另一个记事本文件中的行号 200000 复制到 500000。 那么我必须在这段代码中进行哪些更改。

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

 public class FileCopy 
{
public static void main(String[] args) throws IOException 
{
   File fsrc=new File("C:\\\\Price.txt");         
  File fdes=new File("D:\\\\MyOutputFile.txt");        
  FileReader fr=new FileReader(fsrc);         
  BufferedReader br=new BufferedReader(fr); 
  FileWriter fw= new FileWriter(fdes);       
  String s=null;
  FileInputStream fis = new FileInputStream(fsrc);
  byte[] byteArray = new byte[(int)fsrc.length()];
  fis.read(byteArray);
  String data = new String(byteArray);
  String[] stringArray = data.split("\r\n");
  System.out.println("Number of lines in the file are ::"+stringArray.length);
  int lol=500;
  lol = stringArray.length;
  while((s=br.readLine())!=lol)             //Copying Content to the new file
  {
     fw.write(s);
     fw.write("\n");
     fw.flush();
   }
  System.out.println("File copied");
     fw.close();
}

}

所以我建议你看看这个教程。 您应该使用 BufferedReader 而不是 FileInputStream。 BufferedReader 教程

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM