Posted July 20, 20223 yr I'm reading this article about the function of OS system and I'd want to know the operating system of the host on which my Java program is executing programmatically (for example: I would like to be able to load different properties based on whether I am on a Windows or Unix platform). What is the most reliable and safest approach to achieve this? Edited July 29, 20223 yr by Mobo0
July 20, 20223 yr OSValidator.java package com.mkyong.system; public class OSValidator { private static String OS = System.getProperty("os.name").toLowerCase(); public static void main(String[] args) { System.out.println("os.name: " + OS); if (isWindows()) { System.out.println("This is Windows"); } else if (isMac()) { System.out.println("This is Mac"); } else if (isUnix()) { System.out.println("This is Unix or Linux"); } else if (isSolaris()) { System.out.println("This is Solaris"); } else { System.out.println("Your OS is not support!!"); } } public static boolean isWindows() { return (OS.indexOf("win") >= 0); } public static boolean isMac() { return (OS.indexOf("mac") >= 0); } public static boolean isUnix() { return (OS.indexOf("nix") >= 0 || OS.indexOf("nux") >= 0 || OS.indexOf("aix") > 0); } public static boolean isSolaris() { return (OS.indexOf("sunos") >= 0); } }
Create an account or sign in to comment