J'essaie de lire la sortie d'une commande shell dans un tampon de chaîne, la lecture et l'ajout des valeurs sont corrects sauf pour le fait que les valeurs ajoutées sont toutes les deux lignes dans la sortie shell. par exemple, j'ai 10 lignes od sortie shell et ce code ne stocke que les lignes 1, 3, 5, 7, 9 ,. Quelqu'un peut-il souligner pourquoi je ne suis pas capable d'attraper chaque ligne avec ce code ??? toute suggestion ou idée est bien accueillie :)Stockage de la sortie du shell
import java.io.*;
public class Linux {
public static void main(String args[]) {
try {
StringBuffer s = new StringBuffer();
Process p = Runtime.getRuntime().exec("cat /proc/cpuinfo");
BufferedReader input =
new BufferedReader(new InputStreamReader(p.getInputStream()));
while (input.readLine() != null) {
//System.out.println(line);
s.append(input.readLine() + "\n");
}
System.out.println(s.toString());
} catch (Exception err) {
err.printStackTrace();
} }
}
Bonjour, Merci pour votre réponse. J'ai essayé avec cela aussi while (s.append (input.readLine()) = null) { \t //System.out.println(line); \t s.append (input.readLine() + "\ n"); } Mais le code est bloqué, pouvez-vous me coller un exemple ?? –