StreamTokenizer - Diferenciar palavras de numeros

Olá Amigos,
estou com um problema que nao sei como resolver.

Preciso fazer um trabalho em java em que tenho que ler um arquivo e ir obedecendo os comandos do mesmo. No arquivo tem comandos para criar variáveis e tudo mais. Tem também comandos para somar, subtrair e por aí vai.

Uma das minhas dúvidas é:

Como usar um método que sabe diferenciar palavras de numeros?

Eu preciso de um metodo que leia alguma coisa e me diga se é palavra ou numero, pois se for palavra eu empilho em uma pilha e se for numero eu farei em outra. Já estou usando o metodo TT_WORD e TT_NUMBER mas nao estou conseguindo faze-lo funcionar. No meu codigo, eu pedi para que se for palavra ele me informe e que faça o mesmo para numero, mas o problema é que ele entende tudo como palavra.

Será que voces podem me ajudar?

Posto meu código logo abaixo:

[code]File file = new File(“teste1.txt”);

	try {
		//inicializa o StreamTokenizer
		FileReader reader = new FileReader(file);
		BufferedReader bReader = new BufferedReader(reader);
		StreamTokenizer st = new StreamTokenizer(bReader);	

		//configura o StreamTokenizer
		st.resetSyntax();
		st.whitespaceChars(0,' ');
		st.wordChars(' '+1,255);
		
		
		//manda o StreamTokenizer ler a primeira palavra do arquivo
		// manda o StreamTokenizer ler a primeira palavra do arquivo
		int aux=st.nextToken();
					
		//pega a linha atual do arquivo
		st.lineno();
		
		while(st.ttype!=StreamTokenizer.TT_EOF)
		{
			switch (st.nextToken())
			{
				case StreamTokenizer.TT_WORD:
					System.out.println("E palavra");
					break;
				
				case StreamTokenizer.TT_NUMBER:
					System.out.println("E numero");
					break;
			}		
		}

.
.
.
.
.
[/code]

Já tentei colocar numero para ver o que acontece mas ele classifica tudo como palavra mesmo.

Aguardo retorno!

Muito obrigado

Pega a palavra lida e tenta transformar em número…assim…

//... adiciona o stream lido na string palavra
boolean isNumero = false;
int num = -1;
try{
 num = Integer.parseInt(palavra); //Ou Double.parseDouble, conforme sua necessidade
 System.out.println("é número");
 isNumero = true;
}catch(NumberFormatException nfe){
 System.out.println("é palavra");
 isNumero = false;
}

...

Om Leopoldof,
mas as vezes eu vou precisar da palavra, nao fica legal tentar converter sempre as palavras em numeros.

entende?