вызвать C ++ EXE из Java - PullRequest
       5

вызвать C ++ EXE из Java

0 голосов
/ 28 июля 2010

Я пытаюсь вызвать C ++ EXE из Java-апплета. Для этой цели я использую processbuilder. Мой код выглядит следующим образом

ProcessBuilder pb = new ProcessBuilder(s);
Process process = pb.start();
final InputStream is = process.getInputStream();
OutputStream out = process.getOutputStream();
PrintWriter pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(out)));
pw.println(1);
pw.println(1 +"" +2);
new Thread(new Runnable() {    
   public void run() {
      try {
         BufferedReader br = new BufferedReader(new InputStreamReader(is));
         String line;
         while ((line = br.readLine()) != null) {
            System.out.println(line);
         }
      } catch (java.io.IOException e) {

      }
   }
}).start();
pw.close();

При запуске exe c ++ выглядит так:

  1. Найдите кратчайший путь от s до t.
  2. Найдите соответствующий путь от s до t в пределах длины l.
  3. Найти соответствующий путь от s до t в течение (1 + бета) времени кратчайшего расстояния от s до t.
  4. Выход Пожалуйста, введите команду (1-4):

как только вы введете команду, например 1, мы получим

Пожалуйста, введите s и t через пробел:

После этого вы вводите два числа и вы получаете сеть.

Я могу получить до. Пожалуйста, введите s и t через пробел:. После этого он ничего не отображает.

Помощь!

Спасибо.

1 Ответ

0 голосов
/ 29 июля 2010
pw.println(1 +"" +2);

Отправляет строку 12, а не 1 2. "" - строка нулевой длины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...