Java_判断操作系统类型

送上封装好的静态类

/**
 * 操作系统类:
 * 获取System.getProperty("os.name")对应的操作系统
 */

public class OSinfo {

    private static String OS = System.getProperty("os.name").toLowerCase();

    private static OSinfo _instance = new OSinfo();

    private EPlatform platform;

    public OSinfo(){}



    public static boolean isLinux(){

        return OS.indexOf("linux")>=0;

    }

    public static boolean isMacOS(){

        return OS.indexOf("mac")>=0&&OS.indexOf("os")>0&&OS.indexOf("x")<0;

    }

    public static boolean isMacOSX(){

        return OS.indexOf("mac")>=0&&OS.indexOf("os")>0&&OS.indexOf("x")>0;

    }

    public static boolean isWindows(){

        return OS.indexOf("windows")>=0;

    }

    public static boolean isOS2(){

        return OS.indexOf("os/2")>=0;

    }

    public static boolean isSolaris(){

        return OS.indexOf("solaris")>=0;

    }

    public static boolean isSunOS(){

        return OS.indexOf("sunos")>=0;

    }

    public static boolean isMPEiX(){

        return OS.indexOf("mpe/ix")>=0;

    }

    public static boolean isHPUX(){

        return OS.indexOf("hp-ux")>=0;

    }

    public static boolean isAix(){

        return OS.indexOf("aix")>=0;

    }

    public static boolean isOS390(){

        return OS.indexOf("os/390")>=0;

    }

    public static boolean isFreeBSD(){

        return OS.indexOf("freebsd")>=0;

    }

    public static boolean isIrix(){

        return OS.indexOf("irix")>=0;

    }

    public static boolean isDigitalUnix(){

        return OS.indexOf("digital")>=0&&OS.indexOf("unix")>0;

    }

    public static boolean isNetWare(){

        return OS.indexOf("netware")>=0;

    }

    public static boolean isOSF1(){

        return OS.indexOf("osf1")>=0;

    }

    public static boolean isOpenVMS(){

        return OS.indexOf("openvms")>=0;

    }



    /**

     * 获取操作系统名字

     * @return 操作系统名

     */

    public static EPlatform getOSname(){

        if(isAix()){

            _instance.platform = EPlatform.AIX;

        }else if (isLinux()) {

            _instance.platform = EPlatform.Linux;

        }else if (isWindows()) {

            _instance.platform = EPlatform.Windows;

        }else if (isDigitalUnix()) {

            _instance.platform = EPlatform.Digital_Unix;

        }else if (isFreeBSD()) {

            _instance.platform = EPlatform.FreeBSD;

        }else if (isHPUX()) {

            _instance.platform = EPlatform.HP_UX;

        }else if (isIrix()) {

            _instance.platform = EPlatform.Irix;

        }else if (isMacOS()) {

            _instance.platform = EPlatform.Mac_OS;

        }else if (isMacOSX()) {

            _instance.platform = EPlatform.Mac_OS_X;

        }else if (isMPEiX()) {

            _instance.platform = EPlatform.MPEiX;

        }else if (isNetWare()) {

            _instance.platform = EPlatform.NetWare_411;

        }else if (isOpenVMS()) {

            _instance.platform = EPlatform.OpenVMS;

        }else if (isOS2()) {

            _instance.platform = EPlatform.OS2;

        }else if (isOS390()) {

            _instance.platform = EPlatform.OS390;

        }else if (isOSF1()) {

            _instance.platform = EPlatform.OSF1;

        }else if (isSolaris()) {

            _instance.platform = EPlatform.Solaris;

        }else if (isSunOS()) {

            _instance.platform = EPlatform.SunOS;

        }else{

            _instance.platform = EPlatform.Others;

        }

        return _instance.platform;

    }



    public static void main(String[] args) {

        System.out.println(OSinfo.getOSname());

    }
    public enum EPlatform {

        Any("any"),

        Linux("Linux"),

        Mac_OS("Mac OS"),

        Mac_OS_X("Mac OS X"),

        Windows("Windows"),

        OS2("OS/2"),

        Solaris("Solaris"),

        SunOS("SunOS"),

        MPEiX("MPE/iX"),

        HP_UX("HP-UX"),

        AIX("AIX"),

        OS390("OS/390"),

        FreeBSD("FreeBSD"),

        Irix("Irix"),

        Digital_Unix("Digital Unix"),

        NetWare_411("NetWare"),

        OSF1("OSF1"),

        OpenVMS("OpenVMS"),

        Others("Others");



        private EPlatform(String desc){

            this.description = desc;

        }

        public String toString(){

            return description;

        }

        private String description;

    }

}

参考:https://blog.csdn.net/mikyz/article/details/69398568

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值