Process.waitFor() trava no WINDOWS

1 resposta
A

Pessoal… fiz uma aplicacao no linux e esta rodando normalmente… porem fui testar no windows… quando faco o comando Process.waitFor() ele trava … so com ctrl+al+del e matando a aplicacao…

Alguem pode me explicar? como contornar isso?
Code:

.

.

.

.

Runtime run = Runtime.getRuntime();

Process process=run.exec(teste);

process.waitFor();

.

.

.

Entao… meu teste é um programa em C que gera um TXT … o pq deu estar usando o waitFor() é pq quero que termine a execucao para depois eu ler esse meu TXT… se eu tiro esse waitFor ele passa direto para outra tarefa… e nao acha o arquivo… pq ele vai ler esse arquivo…

Eu fiz uma telinha em SWING para achar o arquivo e apartir desse arquivo eu rodo o programa em C e gero o TXT…

entao esse exec(teste) pega o arquivo q eu entrei e gera o TXT…

Como eu poderia resolver isso sem precisar usar o waitFor()?

Obrigada

1 Resposta

A
bom>

eu coloquei new PrintStream(process.getInputStream()).start();

process.waitFor();

e funcionou

porem…

eu Faco isso para Ler o Arquivo de saida:

try{
                 
                        
                        FileInputStream fi=new FileInputStream(arq_out);
                        BufferedReader br=new BufferedReader(new InputStreamReader(fi));
                        String string=br.readLine();
                        
                        while(string != null)
                        {
                            textArea1.append(string + "\n");
                            string = br.readLine();
                        }
                        br.close();
                        fi.close();
                      
                        }
                    catch(java.io.IOException e)
                    {
                     
                         JOptionPane.showMessageDialog( null, "Erro ao Abrir o Arquivo: " + e.toString() );
                     
                    }
                    catch(Exception ex)
                    {
                
                    }

O que acontece ele vai imprimindo Linha por Linha no meu TextArea… como faco para imprimir Tudo de uma vez?? :smiley:

Obrigada

Criado 20 de abril de 2007
Ultima resposta 20 de abr. de 2007
Respostas 1
Participantes 1