Обычная версия
Java форум JavaTalks
форум программистов

Поиск   Пользователи   Группы   Регистрация 
 Профиль   Личные сообщения 

 Вход 

Выполнение других программ с помощью Runtime.exec()
Список форумов
 ->  Примеры


 
Начать новую тему 
Предыдущая тема :: Следующая тема  
Автор Сообщение
Maximus : 391
Бывалый
Откуда: Ukraine

СообщениеИюн 17, 2009 16:16 
Ответить с цитатой
Пример взят из javaworld.com.

Код:

import java.util.*;
import java.io.*;

class Stream extends Thread {
  private InputStream is;
  private String type;
   
  Stream(InputStream is, String type) {
    this.is = is;
    this.type = type;
  }
   
  public void run() {
    try {
      InputStreamReader isr = new InputStreamReader(is);
      BufferedReader br = new BufferedReader(isr);
      String line = null;
      while ( (line = br.readLine()) != null) {
        System.out.println(type + " > " + line);   
      }      
    } catch (IOException ex){
      ex.printStackTrace(); 
    }
  }
}
public class WindowsExec {
  public static void main(String args[]) {
    try {           
      // параметры для запуска
      String cmd[] = {"cmd.exe", "/C", "start", "c:/Programm/programm.exe"};
    
      // ссылка на объект Runtime
      Runtime rt = Runtime.getRuntime();
      for(String command : cmd) {
        System.out.println("Execing: " + command);
      }
      // выполняем командную строку, переданую в параметре cmd
      Process proc = rt.exec(cmd);
    
      // любое сообщение об ошибках
      Stream errorGobbler = new
      Stream(proc.getErrorStream(), "ERROR");           
           
      Stream outputGobbler = new
      Stream(proc.getInputStream(), "OUTPUT");
               
      errorGobbler.start();
      outputGobbler.start();
    
    } catch (Throwable t) {
      t.printStackTrace();
    }
  }
}
К началу Посмотреть профиль Отправить личное сообщение Отправить e-mail
 
Начать новую тему  Ответить на тему
Страница 1 из 1
Список форумов
 -> Примеры


 
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Java and all Java-related trademarks and logos are trademarks or registered trademarks of Oracle Corporation in the United States and other countries.
Это сайт не относится к фирме Oracle Corporation и не поддерживается ею.

© 2006-2010 www.javatalks.ru: форум java программистов
Используется скрипт phpBB © 2001, 2010 phpBB Group

Хостинг от bizname.ru