在这篇博客中,我们将讨论如何从一个文本文件中读取内容并删除其中的偶数行,然后将结果保存到另一个文件中。
首先,我们需要定义输入文件和输出文件的路径,这里我们分别将其设置为"filein.txt"和"fileout.txt"。
接下来,我们使用BufferedReader
来读取输入文件的内容,并使用BufferedWriter
来写入输出文件。
在读取文件的过程中,我们使用一个lineNumber
变量来追踪当前行号。对于每一行,我们检查当前行号是否为奇数,如果是,则将该行内容写入输出文件,并在行末尾添加换行符。
最后,我们关闭读取输入文件和写入输出文件的流,并打印出处理完成的消息。
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class RemoveEvenLines {
public static void main(String[] args) {
String inputFile = "filein.txt"; // 输入文件路径
String outputFile = "fileout.txt"; // 输出文件路径
try {
BufferedReader reader = new BufferedReader(new FileReader(inputFile)); // 创建读取输入文件的BufferedReader
BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile)); // 创建写入输出文件的BufferedWriter
String line;
int lineNumber = 1; // 记录当前行号
while ((line = reader.readLine()) != null) {
if (lineNumber % 2 != 0) { // 如果行号是奇数,则保留该行内容,写入输出文件
writer.write(line);
writer.newLine(); // 写入换行符
}
lineNumber++; // 增加行号
}
reader.close(); // 关闭输入文件的读取
writer.close(); // 关闭输出文件的写入
System.out.println("File processing completed successfully.");
} catch (IOException e) {
System.out.println("An error occurred while processing the file.");
e.printStackTrace();
}
}
}