Process process = null;
process =Runtime.getRuntime().exec("arp -a");
DataInputStream in=new DataInputStream(process.getInputStream());
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String content = "";
String line = "";
while((line = reader.readLine()) != null){
if(!"".equals(line)){
content = content + "/n" + line;
}
}
reader.close();
in.close();
model.put("dfContent", new String(content));
if (process != null) {
process.waitFor();
}
System.out.println(content);
为什么要用DataInputStream 来中转一次process的inputStream。应该是因为DataInputStream提供:数据输入流允许应用程序以与机器无关方式从基础输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。避免一些问题。
process =Runtime.getRuntime().exec("arp -a");
DataInputStream in=new DataInputStream(process.getInputStream());
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String content = "";
String line = "";
while((line = reader.readLine()) != null){
if(!"".equals(line)){
content = content + "/n" + line;
}
}
reader.close();
in.close();
model.put("dfContent", new String(content));
if (process != null) {
process.waitFor();
}
System.out.println(content);
为什么要用DataInputStream 来中转一次process的inputStream。应该是因为DataInputStream提供:数据输入流允许应用程序以与机器无关方式从基础输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。避免一些问题。
本文介绍了一段Java代码,该代码通过调用系统命令“arp -a”获取网络设备的ARP缓存信息,并详细解释了如何使用DataInputStream处理运行时进程的输入流。
1862

被折叠的 条评论
为什么被折叠?



