java - 如何使用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 教程
推荐阅读
- node.js - 使用 fluen-ffmpeg 在视频上叠加视频(在左上或右上)
- python - 有没有办法知道哪些列有不同的数据类型可以合并?Python - 熊猫
- java - 正则表达式以匹配具有非数字字符和可变数字的精确字符串
- r - 如何将多个相同类型的 pdata 身份添加到一个样本中,并在绘图时能够通过这些身份进行区分
- dart - 我在飞镖中遇到了这个问题,有解决方案吗?
- python - 如何在python中处理来自航拍图像的gcp点列表?
- gensim - Gensim 的 evaluate_word_pairs 的输出中使用了哪些指标?
- python - 在 python 中处理特殊的鼠标按钮
- flutter - 如何在播放器使用 just_audio 颤振播放时更改音频源?
- python - JSON 到 Python 到 JSON