如何在JAVA中获取Windows 10内部版本
有没有一种简单的方法可以用JAVA获取Windows OS构建版本(如16299、15063等)? 目前我找到的唯一解决方案是运行外部进程并解析输出:如何在JAVA中获取Windows 10内部版本,java,regex,windows,Java,Regex,Windows,有没有一种简单的方法可以用JAVA获取Windows OS构建版本(如16299、15063等)? 目前我找到的唯一解决方案是运行外部进程并解析输出: Runtime runtime = Runtime.getRuntime(); Process process; BufferedReader bufferedReader; StringBuilder stringBuilder = new StringBuilder(); String stdOutLine
Runtime runtime = Runtime.getRuntime();
Process process;
BufferedReader bufferedReader;
StringBuilder stringBuilder = new StringBuilder();
String stdOutLine = null;
String windowsVersion = null;
try {
process = runtime.exec("cmd.exe /c ver");
bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
while ((stdOutLine = bufferedReader.readLine()) != null) {
stringBuilder.append(stdOutLine);
}
} catch (IOException ex) {
throw new RuntimeException("Error while getting Windows version");
}
windowsVersion = Arrays.stream(stringBuilder.toString().split("\\."))
.filter(s -> s.length() == 5 && s.matches("[0-9]+"))
.findFirst()
.get();
有没有其他更优雅的方法来获取字符串或提取所需的部分?谢谢。由于Java是独立于平台的,它没有API来获取特定平台的信息。
然而,如果您知道如何在C中实现它,您可以使用