Java, как проверить, если это Vista, Windows 7 или выше с Apache Commons - PullRequest
0 голосов
/ 10 марта 2012

Я понимаю, что вы можете сделать

SystemUtils.IS_OS_WINDOWS_VISTA || SystemUtils.IS_OS_WINDOWS_7

но есть ли способ сделать это программно для всех будущих версий Windows, чтобы метод был примерно таким:

isWindowsVistaOrHigher()

Ответы [ 2 ]

1 голос
/ 15 марта 2012

То, что я закончил, было:

public boolean isVistaOrHigher()
{
   return !SystemUtils.IS_OS_WINDOWS_XP && !SystemUtils.IS_OS_WINDOWS_98 && ... ;
}
1 голос
/ 11 марта 2012

Я думаю, что вам вообще не нужен Apache Commons.Системное свойство os.version содержит внутреннюю версию ОС (os.name - это удобочитаемое имя и будет содержать Windows, за которым следует более конкретная информация, такая как Vista).Я думаю, что в Windows 7, если вы позвоните System.getProperty("os.version"), вы получите 6.1, а Vista - 6.0.Предполагая, что они не изменяют соглашение, вы можете попытаться поднять часть до первой точки, если точка присутствует (используя String.substring() и String.indexOf('.')), проанализировать подстроку как целое число, используя Integer.parseInt(), и сравнить, еслирезультирующее значение составляет не менее 6.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...