Maison > Java > javaDidacticiel > Comment capturer efficacement la sortie de la ligne de commande en Java ?

Comment capturer efficacement la sortie de la ligne de commande en Java ?

Linda Hamilton
Libérer: 2024-12-28 14:21:30
original
487 Les gens l'ont consulté

How to Efficiently Capture Command Line Output in Java?

Extraction de la sortie de ligne de commande en Java

La classe Runtime de Java offre la possibilité d'exécuter des programmes en ligne de commande. Cependant, obtenir le résultat généré par ces commandes peut s’avérer une tâche difficile. Cet article résout ce problème en expliquant comment extraire la sortie d'un programme en ligne de commande à l'aide de la classe Runtime.

Dans le code fourni, le message d'erreur révèle que le flux de sortie n'est pas lu correctement. Pour remédier à cela, le code suivant démontre une méthode robuste :

Runtime rt = Runtime.getRuntime();
String[] commands = {"system.exe", "-get t"};
Process proc = rt.exec(commands);

BufferedReader stdInput = new BufferedReader(new InputStreamReader(proc.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(proc.getErrorStream()));

// Read the output from the command
System.out.println("Here is the standard output of the command:\n");
String s = null;
while ((s = stdInput.readLine()) != null) {
    System.out.println(s);
}

// Read any errors from the attempted command
System.out.println("Here is the standard error of the command (if any):\n");
while ((s = stdError.readLine()) != null) {
    System.out.println(s);
}
Copier après la connexion

Ce code utilise la classe Runtime pour exécuter la commande et ouvre des lecteurs pour les flux d'entrée standard et d'erreur du processus. Il parcourt ensuite les lignes de sortie et les erreurs, les imprimant sur la console.

Pour des détails plus complets et des options avancées, consultez la documentation Java sur ProcessBuilder : https://docs.oracle.com/javase/ 7/docs/api/java/lang/ProcessBuilder.html

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal