gpt4 book ai didi

java - 捕获 cmd 输出并将其包含在 java 列表中

转载 作者:行者123 更新时间:2023-12-01 05:45:29 26 4
gpt4 key购买 nike

我尝试在java中执行一些cmd命令,我的脚本:

public void test(){
try{

Runtime rt=Runtime.getRuntime();
Process p = rt.exec("cmd /c "+"adb devices");

BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));

while((line=input.readLine())!=null){

System.out.print(line);

}

}catch(Exception e){
System.out.println("process failed");
}
}

输出结果:

run:
List of devices attached
0160880B0401F006 device

我怎样才能捕获该结果的一部分:“0160880B0401F006”并将其放入我的图形用户界面上的列表中?

先谢谢了

最佳答案

我会使用a regular expression (未经测试):

Pattern p = Pattern.compile("(\d+)\s*(.*)");
while((line=input.readLine())!=null){
Matcher m = p.matcher(line);
if (m.matches()) {
String id = matcher.group(1);
String name = matcher.group(2);
// do whatever you want with your values here
System.out.println("id: " + id + ", name: " + name);
}
}

您还应该阅读When Runtime.exec() won't ,以防您在执行外部命令时遇到任何问题。

关于java - 捕获 cmd 输出并将其包含在 java 列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6055074/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com