以下代码是在
cmd
中运行一个命令,并生成一个包含命令行输出的文本文件。下面的代码在Eclipse的输出窗口中显示正确信息,但只有最后一行被打印到文本文件中。有人可以帮我解决吗?import java.io.*;
public class TextFile {
public static void main(String[] args) throws IOException {
try {
Process p = Runtime.getRuntime().exec("git log");
BufferedReader in = new BufferedReader(
new InputStreamReader(p.getInputStream()));
BufferedWriter writer = null;
String line = null;
while ((line = in.readLine()) != null) {
writer = new BufferedWriter(new FileWriter("textfile.txt"));
writer.write(line);
System.out.println(line);
writer.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
NIO
。 核心类是Paths
、Path
和Files
。 例如,您可以使用Paths.get("filename")
查找文件或使用Files.write(pathToFile, stuffToWrite, options)
向文件写入内容。 - Zabuzard