Bonjour,
J'essaye de récupérer les infos d'un média avec mediainfo (installation cli)
J'utilise ce code
mais mon fichier t.txt reste vide. La commande fonctionne car lorsque j'ouvre une fenetre terminal et que je tape
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 public static void main(String[] args) throws IOException, InterruptedException { boolean isWindows = System.getProperty("os.name") .toLowerCase().startsWith("windows"); try{ ProcessBuilder builder = new ProcessBuilder(); if (isWindows) { builder.command("cmd.exe", "/c", "dir"); } else { builder.command("sh", "-c", "cd /Users/sebv/Downloads && mediainfo foo.mkv >>t.txt"); } builder.directory(new File(System.getProperty("user.home"))); Process process = builder.start(); StreamGobbler streamGobbler = new StreamGobbler(process.getInputStream(), System.out::println); Executors.newSingleThreadExecutor().submit(streamGobbler); int exitCode = process.waitFor(); assert exitCode == 0; }catch (Exception e) { System.out.println(e.toString()); } } private static class StreamGobbler implements Runnable { private InputStream inputStream; private Consumer<String> consumer; public StreamGobbler(InputStream inputStream, Consumer<String> consumer) { this.inputStream = inputStream; this.consumer = consumer; } @Override public void run() { new BufferedReader(new InputStreamReader(inputStream)).lines() .forEach(consumer); } }j'ai bien toutes les infos dans mon fichiers t.txt.
Code : Sélectionner tout - Visualiser dans une fenêtre à part cd /Users/sebv/Downloads && mediainfo foo.mkv >>t.txt
Quand je remplace la commandepar
Code : Sélectionner tout - Visualiser dans une fenêtre à part cd /Users/sebv/Downloads && mediainfo foo.mkv >>t.txt
dans mon fichier t.txt il y a bien rempli avec tout les éléments.
Code : Sélectionner tout - Visualiser dans une fenêtre à part cd /Users/sebv/Downloads && ls >>t.txt
Si quelqu'un a une petite idée.
Merci








Répondre avec citation



quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez 
Partager