Java如何检查是否是带有apache commons的Vista,Windows 7或更高版本

时间:2012-03-10 19:48:30

标签: java windows

我知道你可以做到

SystemUtils.IS_OS_WINDOWS_VISTA || SystemUtils.IS_OS_WINDOWS_7

但有没有办法以编程方式为所有未来版本的窗口执行此操作,因此该方法类似于:

isWindowsVistaOrHigher()

2 个答案:

答案 0 :(得分:1)

我认为你根本不需要Apache Commons。系统属性os.version包含内部操作系统版本(os.name是人类可读的名称,将包含Windows,后跟更具体的信息,例如Vista)。我认为在Windows 7上,如果您致电System.getProperty("os.version"),那么当Vista为6.1时,您将获得6.0。假设它们没有更改约定,如果存在点(使用String.substring()String.indexOf('.')),您可以尝试将该部分提取到第一个点,使用{{将子字符串解析为整数1}}并比较结果值是否至少为Integer.parseInt()

答案 1 :(得分:1)

我最终做的是:

public boolean isVistaOrHigher()
{
   return !SystemUtils.IS_OS_WINDOWS_XP && !SystemUtils.IS_OS_WINDOWS_98 && ... ;
}