[Ajuda] Java + NetBeans 6.5 (Não Aceita toda Entrada Colada)

Olá, pessoal!

Estou passando por um fato curioso, quando eu envio todas as entradas de uma vez só no netbeans, para meu programa ele curiosamente só “lê” até uma certa parte, e para justamente onde tem um “readln”, o que ele era para ter lido ele não lê e fica esperando que eu digite novamente, se eu digitar ele funciona tudo lindamente, mas se eu copiar e colar, não funfa!!
Quando eu entro com:
q0 q1 q2 q3 q4 q5 f6 q7/Definicao Maquina Mealy
q0 1 q1 a
q0 0 q7 erro
q1 0 q2 c
q1 1 q7 erro
q2 1 q3 e
q2 0 q7 erro
q3 0 q4 i
q3 1 q7 erro
q4 1 q5 t
q4 0 q7 erro
q5 0 f6 a
q5 1 q7 erro
f6 0 q7 #
f6 1 q7 #
q7 1 q7 #
q7 0 q7 # //Termino da Definicao
q0,inicio q1,meio f2,fim q3,erro //Definicao Maquina Moore
q0 0 q1
q0 1 q3
q1 0 f2
q1 1 q0
f2 1 q3
f2 0 q3
q3 1 q3
q3 0 q3//Termino da definicao e apos ler até aqui ele imprime as máquinas convertidas corretamente, ou seja está tudo funcionando! após isso vem uma especie de loop
s 0
101010
s 1
0100
f

Ele só aceita até “q3 0 q3” e fica esperando que eu digite novamente o s0 e o q está abaixo dele!

Trecho do código:

imprimeMealyConvertida();
System.out.println("$");
// System.out.flush();

do{
option = reader.readLine();
if(option.equals(“s 0”)){
recebeAlfabetoMealy();
System.out.println();

}
else if(option.equals(“s 1”)){
recebeAlfabetoMoore();
System.out.println();
}
} while(!option.equals(“f”));

}

Esse "imprimeMealyConvertida():
public void imprimeMealyConvertida(){
ArrayList EstadoMealy;
EstadoMealy estado;
EstadoMealy = MealyConvertida.getEstados();
for(Iterator it = EstadoMealy.iterator(); it.hasNext();){
estado = it.next();
System.out.println(estado.getNome()+’ ‘+ ‘0’+’ ‘+estado.getEstado0().getNome()+’ ’ +estado.getSaida0());
System.out.println(estado.getNome()+’ ‘+ ‘1’+’ ‘+estado.getEstado1().getNome()+’ ’ +estado.getSaida1());

}
}

Estou muito curioso, tentei dar um system.out.flush(); mas mesmo assim ele continua nao pegando as entradas depois desse. Rodei o Debug com um breakpoint em "option = read.readline() " e realmente ele não lê s0, como deveria, espera eu digita novamente!

Então, só deixando mais claro se precisar que eu coloque mais algum codigo colocarei, o interessante é que está tudo aparentemente certo, porque ele lê toda a entrada até certo ponto e imprime tudo que eu quero, não dá erro nenhum só que ao invéz dele continuar pegando o resto da entrada que eu colei, eu tenho que digitar novamente,pois se eu colar dá erro!

Att

Cara, não sei quando ao restante do pessoal, mas eu não entendi absolutamente nada…

TIpo, eu estou lendo pelo teclado, certo? se eu fosse digitar cada entrada uma por uma era para ele ler novamente, e de fato isso acontece, mas se eu jogo tudo de uma vez no terminal do netbeans e dou um enter, ele não lê as ultimas 5 linhas e espera que eu as digite!

Resolvi o problema, alguma me dizia que era problema com o Buffereadreader.

Eu tinha uma classe chamada “Entrada” que era para receber a entrada e dá o tratamento em alguns métodos, e lá eu instanciava uma variável para ler! Então, tudo que eu utilizava o objeto da Classe Entrada(Declarado na Classe Main) eu conseguia ler tranquilo(Colando as entradas) o que eu instanciava um novo objeto do tipo Buffereadreader ele dava pau e só lia se eu digitasse um por um.

Não sei porque é, mas quando eu coloquei para todos lerem atraves do objeto de Entrada eu consegui colar toda entrada e obter a saida que eu queria!

Alguem tem alguma idéia do q aconteceu? Eu resolvi o problema mas não consegui entender, será que quando uso 2 objetos do Buffered ele dá problema?!

Att