7

我有一个 Java 应用程序,它需要在 Windows 7 上以不同方式运行。

您将如何检查当前的 Windows 版本?检查操作系统版本 6.1 就足够了吗?

4

4 回答 4

5

我也以os.name空安全的方式解决了同样的检查问题:

public boolean runningOnWindows7() {
    String osName = System.getProperty("os.name");
    String osVersion = System.getProperty("os.version");
    return "Windows 7".equals(osName) && "6.1".equals(osVersion);
}
于 2010-02-16T13:06:07.943 回答
2

操作系统版本号相当不同。

例如,XP 用数字 5.1 表示,Windows 7 用数字 6.1 表示

内部版本号确定更新和服务包。

检查操作系统版本号应该是相当可靠的。但请记住,如果机器上安装了 Java,则允许 Java 在 Linux 和 Mac 上运行。

于 2010-02-16T12:59:12.770 回答
2
System.getProperty("os.name") 
System.getProperty("os.version")

Windows 7 = 6.1 版

于 2010-02-16T13:06:18.463 回答
1

修复dfa的答案:

public boolean runningOnWindows7() {
    String osName = System.getProperty("os.name");
    String osVersion = System.getProperty("os.version");
    return "Windows 7".equals(osName) || "6.1".equals(osVersion);
}

|| 代替 &&

于 2013-12-01T18:34:06.847 回答