Узнать операционную систему java

Detect OS Name and Version Java

Java is Platform independent and can run everywhere. Knowing this, it can be worth knowing in what operation system the application is running. To detect the current operation system, you can use the OSInfo class below, which retrieves the information from the system properties and returns an OS enum that holds the name and version of the operating system the application is running on.

Detect Operating System

We can get the current operation system name by calling System.getProperty(«os.name»); . We evaluate this value and appropriately map it to the correct os. Finally we add the version number of the os by calling the System.getProperty(«os.version»); .

package com.memorynotfound.file; import java.io.IOException; import java.util.Locale; public class OSInfo < public enum OS < WINDOWS, UNIX, POSIX_UNIX, MAC, OTHER; private String version; public String getVersion() < return version; >public void setVersion(String version) < this.version = version; >> private static OS os = OS.OTHER; static < try < String osName = System.getProperty("os.name"); if (osName == null) < throw new IOException("os.name not found"); >osName = osName.toLowerCase(Locale.ENGLISH); if (osName.contains("windows")) < os = OS.WINDOWS; >else if (osName.contains("linux") || osName.contains("mpe/ix") || osName.contains("freebsd") || osName.contains("irix") || osName.contains("digital unix") || osName.contains("unix")) < os = OS.UNIX; >else if (osName.contains("mac os")) < os = OS.MAC; >else if (osName.contains("sun os") || osName.contains("sunos") || osName.contains("solaris")) < os = OS.POSIX_UNIX; >else if (osName.contains("hp-ux") || osName.contains("aix")) < os = OS.POSIX_UNIX; >else < os = OS.OTHER; >> catch (Exception ex) < os = OS.OTHER; >finally < os.setVersion(System.getProperty("os.version")); >> public static OS getOs() < return os; >>

Detecting the current os the application is running on.

package com.memorynotfound.file; public class DetectOS < public static void main(String. args)< System.out.println("OS: " + OSInfo.getOs()); System.out.println("OS version: " + OSInfo.getOs().getVersion()); System.out.println("Is mac? " + OSInfo.OS.MAC.equals(OSInfo.getOs())); >>
OS: MAC OS version: 10.10.5 Is mac? true

References

Источник

Читайте также:  Как узнать разрядность числа python

Java: Как определить тип и версию ОС

Недавно возник вопрос, как в Java получить тип и версию ОС. Оказалось, что это вовсе не сложно. Достаточно воспользоваться методом System.getProperty . Если данному методу передать строковое значение “os.name”, то мы получим название ОС. Если же передать строковое значение вида: os.version , то мы получим версию ОС. Итак, на практике все это будет выглядеть примерно так:

import java.io.BufferedReader; import java.io.InputStreamReader; public class MainApp  /** * @param args */ public static void main(String[] args)  if(isWindows()) System.out.println("This is Windows"); System.out.println("It's version is: " + getOSVerion()); >else if(isMac()) System.out.println("This is Macintosh"); System.out.println("It's version is: " + getOSVerion()); >else if(isUnix ()) System.out.println("This is Unix or Linux OS"); System.out.println("It's version is: " + getOSVerion()); >else System.out.println("This is unknown OS"); > System.out.println("Version: " + getOSVerion()); > public static boolean isWindows() String os = System.getProperty("os.name").toLowerCase(); //windows return (os.indexOf( "win" ) >= 0); > public static boolean isMac() String os = System.getProperty("os.name").toLowerCase(); //Mac return (os.indexOf( "mac" ) >= 0); > public static boolean isUnix () String os = System.getProperty("os.name").toLowerCase(); //linux or unix return (os.indexOf( "nix") >=0 || os.indexOf( "nux") >=0); > public static String getOSVerion()  String os = System.getProperty("os.version"); return os; > > 

Более подробную информацию о System.getProperty() можно почитать в Java Doc,

а с более подробной спецификацией ОС и архитектур можно ознакомиться тут.

Источник

Как определить ОС с помощью Java

Есть несколько способов выяснить, на какой ОС работает наш код.

В этой краткой статье мы увидим, как сосредоточиться на обнаружении ОС в Java.

2. Реализация

Один из способов — использовать System . getProperty(os.name) для получения имени операционной системы.

Второй способ — использовать SystemUtils из Apache Commons Lang API.

Давайте посмотрим на них обоих в действии.

2.1. Использование свойств системы

Мы можем использовать класс System для определения ОС.

 public String getOperatingSystem()    String os = System.getProperty("os.name");   // System.out.println("Using System Property: " + os);   return os;   > 

2.2. SystemUtils — язык Apache Commons

SystemUtils от Apache Commons Lang — еще один популярный вариант, который стоит попробовать. Это хороший API, который изящно заботится о таких деталях.

Узнаем ОС с помощью SystemUtils:

 public String getOperatingSystemSystemUtils()    String os = SystemUtils.OS_NAME;   // System.out.println("Using SystemUtils: " + os);   return os;   > 

3. Результат

Выполнение кода в нашей среде дает нам тот же результат:

Using SystemUtils: Windows 10 Using System Property: Windows 10 

4. Вывод

В этой быстрой статье мы увидели, как мы можем программно найти/обнаружить ОС из Java.

Как всегда, примеры кода для этой статьи доступны на GitHub .

Источник

Определение операционной системы в Java

В некоторых случаях, при разработке программного обеспечения на языке Java, может возникнуть необходимость определить операционную систему, на которой запущена программа. Например, может быть необходимо загрузить разные параметры в зависимости от того, работает программа на Windows или Unix.

Для определения операционной системы в Java, можно использовать системное свойство «os.name». Это свойство хранит имя операционной системы. Для получения его значения, можно использовать метод System.getProperty(), передав в него строку «os.name» в качестве аргумента.

Ниже приведен пример, как это можно сделать:

String osName = System.getProperty("os.name");

Теперь значение переменной osName будет содержать имя операционной системы.

Однако стоит заметить, что имя операционной системы может быть представлено в разных форматах для разных систем. Например, для Windows это может быть «Windows XP», «Windows 7», «Windows 10» и т.д. Для Unix-подобных систем это может быть «Linux», «Mac OS X», «Solaris» и т.д. Поэтому, при проверке значения этого свойства, рекомендуется использовать методы startsWith() или contains() класса String, а не метод equals().

Например, если требуется проверить, работает ли программа на любой версии Windows, можно сделать это следующим образом:

if (osName.startsWith("Windows")) < // код для Windows >else < // код для других операционных систем >

Таким образом, использование системного свойства «os.name» позволяет определить операционную систему, на которой работает программа, с достаточной надежностью.

Источник

Как определить ОС с помощью Java

Есть несколько способов выяснить ОС, на которой работает наш код.

В этой краткой статье мы увидим, как сосредоточиться на обнаружении ОС в Java.

2. Реализация

Один из способов — использоватьSystem.getProperty(os.name) для получения имени операционной системы.

Второй способ — использоватьSystemUtils из APIApache Commons Lang.

Давайте посмотрим на них обоих в действии.

2.1. Использование системных свойств

Мы можем использовать классSystem для обнаружения ОС.

public String getOperatingSystem() < String os = System.getProperty("os.name"); // System.out.println("Using System Property: " + os); return os; >

2.2. SystemUtils — язык Apache Commons

SystemUtils от Apache Commons Lang — еще один популярный вариант. Это хороший API, который изящно заботится о таких деталях.

Давайте узнаем ОС с помощьюSystemUtils:

public String getOperatingSystemSystemUtils() < String os = SystemUtils.OS_NAME; // System.out.println("Using SystemUtils: " + os); return os; >

3. Результат

Выполнение кода в нашей среде дает нам тот же результат:

Using SystemUtils: Windows 10 Using System Property: Windows 10

4. Заключение

В этой быстрой статье мы увидели, как мы можем находить / обнаруживать ОС программно, с Java.

Как всегда, доступны примеры кода для этой статьиover on GitHub.

Источник

Оцените статью