Я пытаюсь прочитать вывод команды оболочки в строковый буфер, чтение и добавление значений в порядке, за исключением того факта, что добавленные значения представляют собой каждую вторую строку в выводе оболочки. Например, у меня есть 10 строк od shell output, и этот код хранит только 1, 3, 5, 7, 9, ряд. Может ли кто-нибудь указать, почему я не могу поймать каждую строку с помощью этого кода ??? любое предложение или идея приветствуется :)Сохранение вывода оболочки
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();
} }
}
Здравствуйте, Спасибо за ваш ответ. Я пытался с этим также While (s.append (input.readLine())! = NULL) { \t //System.out.println(line); \t s.append (input.readLine() + "\ n"); } Но код застрял, вы можете вставить мне пример? –