String Tokenizer

1 resposta
R

Olá Pessoal.

Tenho uma String dataHora que pode vim com os seguintes conteúdos

Exemplos:

//quando vem nesse formato é sem problemas
String dataHora= "20060831^20060831^08:06^08:11"
// o problema é que pode vim nos formatos abaixos
String dataHora= "20060831^^08:06^08:11"
String dataHora= "20060831^20060831^^"
String dataHora= "20060831^^^"

[quote]

StringTokenizer datas = new StringTokenizer(dataHora,"^");
			  

			  //data Início da ocorrência
			  String dtInic = datas.nextToken();
			  resultados[countLinha].add(dtInic);

			  //data Fim da ocorrência se não vier estoura datas.nexToken(), pois estará "^^"
			  
                                               String dtFim = datas.nextToken();		                resultados[countLinha].add(dtFim);
			  
			  
			  //hora Inic da ocorrência
			  String hrInic = datas.nextToken("");
			  resultados[countLinha].add(hrInic);
			  		  	  
			  //hora Inic da ocorrência
			  String hrFim =  datas.nextToken();
			  resultados[countLinha].add(hrFim);
			  
			  countLinha ++;
			  }

Se alguém poder me ajudar ficarei muito grato...

1 Resposta

F

Olá, não entendi bem o que vc quer fazer mas tenta usar o metodo split() de String no lugar de StringTokenizer… tipo…

String dataHora= “20060831^20060831^08:06^08:11”
String tokens[] = dataHora.split("^",-1);

separa a String original em um array de Strings usando o separador “^” mesmo que não tenha nada entre eles, por exemplo…

tokens[0] == “20060831”,
tokens[1] == “20060831”,
tokens[2] == “08:06”,
tokens[3] == “08:11”,

no caso de dataHora = “20060831^^^” ;

tokens continuaria com tamanho 4;

tokens[0] == “20060831”,
tokens[1] == “”,
tokens[2] == “”,
tokens[3] == “”,

vlw

Criado 15 de setembro de 2006
Ultima resposta 18 de set. de 2006
Respostas 1
Participantes 2