2009-10-20 7 views

Répondre

3

de: a blog

package com.deepak.entertainment; 

import java.io.IOException; 
import java.io.OutputStream; 

public class Deepak { 

public static void main(String[] args) throws InterruptedException { 
    Runtime runtime = Runtime.getRuntime(); 
    try { 
    Process process = runtime.exec(”C:\\WINDOWS\\system32\\cmd.exe”); 
    OutputStream os = process.getOutputStream(); 
    os.write(”shutdown -s -f -t 90 \n\r”.getBytes()); 
    os.close(); 
    process.waitFor(); 
    } catch (IOException e) { 
    e.printStackTrace(); 
    } 
} 

} 
+2

Mais cela dépend du système d'exploitation !! –

+0

Oui, il suffit de lire le code et vous pouvez mettre à jour ce qui se passe dans runtime.exec pour qu'il puisse s'agir d'une commande Linux ou de toute autre commande OS. Linux "shutdown -h now" ou "init 0" .. –

1

Vous pouvez exécuter la commande DOS shutdown sur XP et supérieur

2

Vous ne pouvez pas fermer directement OS avec Java, mais vous pouvez exécuter un script shell ou programme natif Runtime.getRuntime().exec("shutdown") par exemple. Ou vous pouvez écrire JNI crochet dans le système natif

5

Je crois que puisque Java est indépendant du système d'exploitation, il n'y a pas de moyen direct de le faire, autre que d'invoquer quelque chose du système d'exploitation sous-jacent.

+2

Java peut fournir une méthode indépendante du système d'exploitation pour arrêter la machine. –

+0

Mais ce n'est pas le cas. Ce qui est bien :) –

1
// May need to change for a Swing or SWT application. 
System.out.println ("Please shut down your OS now. I'll wait..."); 
boolean forever = true; 
while (forever) {} 

:-)

Questions connexes