Я пытаюсь сделать так, чтобы, когда пользователь нажимает кнопку, появляется новый экран и автоматически запускает процесс командной строки, и они могут видеть результаты этого процесса.Чтение файлов в командной строке в java
Я думал, что смогу использовать JTextArea
для установки текста.
Вот что у меня есть на данный момент:
runButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent r)
{
JFrame runFrame = new JFrame("Running process...");
runFrame.setVisible(true);
runFrame.setSize(500, 400);
runFrame.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
runFrame.setLayout(null);
JTextArea run = new JTextArea();
run.setBounds(100,50,300,200);
runFrame.add(run);
Runtime runtime = Runtime.getRuntime();
Process process = null;
try
{
process = runtime.exec("cat /cmd/h:/testfile");
}
catch (IOException e)
{
e.printStackTrace();
}
InputStream runStream = process.getInputStream();
InputStreamReader runStreamReader = new InputStreamReader(runStream);
BufferedReader br = new BufferedReader(runStreamReader);
String line;
StringBuilder sb = new StringBuilder();
try
{
while ((line = br.readLine()) != null)
{
sb.append(line);
}
}
catch (IOException e)
{
e.printStackTrace();
}
run.setText(sb.toString());
}
});
Ошибка я получаю с этим:
Не удается запустить программу «кошки»: CreateProcess ошибка = 2, система не может найти указанный файл
Я пытался проверить открытие файла, чтобы проверить это, что просто содержит строки случайных букв.
EDIT:
Я не уверен, что я ясно объяснил, что мне нужно это делать. Я хочу, чтобы команда запускалась в командной строке, которая открывает файл. Затем я хочу, чтобы результат командной строки выводился в JTextArea.
EDIT 2:
Я попытался изменить свою команду "пинг riot.de -t". Это будет пинговать беспорядки сервера так часто, и он возвращает ответ с временем отклика.
При запуске это новый кадр просто черный, а java замерзает.
Вы используете это в Windows? В Windows нет команды 'cat'. – Jesper
похоже на '/ cmd/h:/testfile' не существует. вы запускаете cygwin на окнах? –
Проверьте правильность пути. – Blobonat