JAVA中进行操作系统编程的相关类有哪些,比如说,获取当前运行的系统平台(NT/LINUX/SORLARIS),本机IP地址列表等

解决方案 »

  1.   

    JAVA对有些是提供了,有些只能用JNI了,IP列表是支持的
      //Get the host ip
          //将可能出现多IP情况~查询本地所有IP去试图连接主机
          InetAddress[] temp;
          try {
            temp = InetAddress.getAllByName(InetAddress.getLocalHost().getHostName());
            for (int i = 0; i < temp.length; i++) {
              if (i >= 128) {
                continue;
              }
              mClientIP[i] = temp[i].getHostAddress();
            }
          }
          catch (UnknownHostException e) {
            e.printStackTrace();
            System.exit(0);
            return;
          }
      

  2.   

    获取当前运行的系统平台(NT/LINUX/SORLARIS)也有办法啊!有很多抽象类就是要根据平台实例化的啊.例如Toolkit等.
    打个比方:javax.swing里有一个UIManager类,它有一个方法:getSystemLookAndFeelName()方法,返回值里面还是有一点平台信息的.一般来说,java实在做不到的再用JNI,因为用JNI还是比较复杂的.jni.h里的JNIEnv这个类有相当多的内容.JNI用来控制其它窗口句柄,透明窗口还是可以的.呵呵.