Appeler un exécutable et transmettre les paramètres depuis Java
Lorsque vous travaillez avec des processus externes depuis Java, il est souvent nécessaire d'appeler un exécutable et de le transmettre paramètres spécifiques. Ceci peut être réalisé via la classe ProcessBuilder, comme indiqué dans le code suivant :
<code class="java">Process process = new ProcessBuilder("C:\PathToExe\MyExe.exe").start(); // Process output and error streams InputStream is = process.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String line; System.out.printf("Output of running %s is:", Arrays.toString(args)); while ((line = br.readLine()) != null) { System.out.println(line); }</code>
Passer des paramètres
Pour transmettre des paramètres à l'exécutable, fournissez-les simplement comme arguments dans le constructeur ProcessBuilder :
<code class="java">Process process = new ProcessBuilder("C:\PathToExe\MyExe.exe", "param1", "param2").start();</code>
Gestion des chemins avec des espaces
Si le chemin d'accès à l'exécutable contient des espaces, vous pouvez le mettre entre guillemets doubles dans ProcessBuilder constructeur :
<code class="java">Process process = new ProcessBuilder("\"C:\User\My applications\MyExe.exe\"").start();</code>
En suivant ces modifications, vous devriez pouvoir appeler avec succès un exécutable et transmettre des paramètres depuis Java, même lorsque des espaces sont présents dans le chemin d'accès à l'exécutable.
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!