StringTokenizer - Como funciona?

Lista,

Tenho esse String:

“05/06/2006;17:39:18;01301;AGV;13;150;AGRIVALE;160;;;;;;;;;;;;;;;;;;;;;;;;;;;;4045113001335;Italia Muscat;Caixa 4,5 Kg;160;01;Copacabana Gold;NE;Y;PAPEL BRANCO;61 ;05/06/2006;19:04:11;SUDU5117447;3415515572;;SUDG 0470180;ALIANCA EUROPA;21;;;;;;;;;;;;;;;;;;;;; ; ;”

E gostaria de “pegar” cada campo separado por ponto e vírgula. Inclusive os que está “”.

Como fiz:

[code]StringTokenizer st = new StringTokenizer(linha, “;”);
String[] elem = new String[st.countTokens()];

		System.out.println(linha);
		
		for (int i = 0; st.hasMoreTokens(); i++){
			System.out.println("Campo " + i + " " + st.nextToken());
		}
	}[/code]

Porém dessa forma ele só devolve os campos com algum valor. Como resolver essa paradinha?

Muito obrigado,

Marques

Não use StringTokenizer; ele não serve para pegar strings vazias. No seu caso, String.split é suficiente.

String s = "05/06/2006;17:39:18;01301;AGV;13;150;AGRIVALE;160;;;;;;;;;;;;;;;;;;;;;;;;;;;;4045113001335;Italia Muscat;Caixa 4,5 Kg;160;01;Copacabana Gold;NE;Y;PAPEL BRANCO;61 ;05/06/2006;19:04:11;SUDU5117447;3415515572;;SUDG 0470180;ALIANCA EUROPA;21;;;;;;;;;;;;;;;;;;;;; ; ;"; 
String[] campos = s.split (";");

Valeu thingol!!!

Como é que eu faria para jogar esses dados 1 por 1 em varias textfields?