win98
try {
    java.lang.Runtime.getRuntime().exec("rundll32.exe user.exe,exitwindows");
} catch (java.io.IOException e) {
    e.printStackTrace();           
}winxp
try {
    java.lang.Runtime.getRuntime().exec("shutdown -s");
} catch (java.io.IOException e) {
    e.printStackTrace();           
}试试看?

解决方案 »

  1.   

    java要关闭操作系统难道不用调用win32的api吗??
      

  2.   

    win98
    try {
        java.lang.Runtime.getRuntime().exec("rundll32.exe user.exe,exitwindows");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }winxp
    try {
        java.lang.Runtime.getRuntime().exec("shutdown -s");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }
      

  3.   

    呵呵,楼上的用java.lang.Runtime的exec方法倒是可行。
      

  4.   

    其实WINDOWS有自己关闭系统的程序,楼主这个程序只不过是用JAVA的exec调用外部这个程序而已!有什么其它调用API的方法吗?
      

  5.   

    win2000
    try {
        java.lang.Runtime.getRuntime().exec("rundll32.exe user.exe,exitwindows");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }winxp
    try {
        java.lang.Runtime.getRuntime().exec("shutdown -s");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }
      

  6.   

    win98
    try {
        java.lang.Runtime.getRuntime().exec("rundll32.exe user.exe,exitwindows");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }
    win2000
    try {
        java.lang.Runtime.getRuntime().exec("rundll32.exe user.exe,exitwindows");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }winxp
    try {
        java.lang.Runtime.getRuntime().exec("shutdown -s");
    } catch (java.io.IOException e) {
        e.printStackTrace();           
    }
      

  7.   

    为什么明明和前面是同样的回答,却仍要post呢