您好我正在制作一个程序,我执行Windows命令并将其保存到文件中,但我很困惑如何将长数据写入文件..我确实编写了文件,但只包含最后一行。请帮助。
Process p=Runtime.getRuntime().exec("cmd /c ipconfig");
p.waitFor();
BufferedReader reader=new BufferedReader(
new InputStreamReader(p.getInputStream())
);
String line=reader.readLine();
while(line!=null)
{
System.out.println(line);
line=reader.readLine();
}
答案 0 :(得分:1)
如果你确实需要对结果做其他事情,你可以这样做:
Process p = Runtime.getRuntime().exec("cmd /c ipconfig");
p.waitFor();
BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream()));
BufferedWriter writer = null;
try {
File file = new File(filename);
writer = new BufferedWriter(new FileWriter(file));
String line;
while((line=reader.readLine()) != null) {
writer.write(line);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
writer.close();
} catch (Exception e) {}
}
答案 1 :(得分:0)
Process p=Runtime.getRuntime().exec("cmd /c ipconfig > filename.txt");
如果您只想将输出输出到文件中,您也可以在命令行中添加命令。如果您想从代码中读取并解析它,则需要更清晰的解决方案。