estou tentando tratar String de um rastreador… ele me envia suas informaçoes como localização hora… data…e etc… por uma “stringona” e existem informações qsão “grudadas” uma nas outras… e para fazer a separação da string e pegar oque me interessa estou usando Split. o problema é o seguinte… ele nem sempre me envia a mesma String ou melhor nem sempre me envia a string em um tamanho padrão… por exemplo…
essa String tratei com Split…esse é um dos formatos…
entre outros que ele pode me retornar dependendo do comando que envio para ele… gostaria de saber se teria alguma API que me ajude ou que possibilite tratar varias strings… e não um padrão de strings. com tamanha sempre iguais.
dei uma olhada na API java.util.regex… mais ainda não sei como ela pode me ajudar. se alguem tiver alguma dica… por favor… mea ajude.
bom olhando seu exemplo se ele sempre enviar msg: poderiamos ignorar o “cabeçalho”;
String msg = mensagem.replace("msg:","");
agora temos uma “stringona” sem o cabeçalho.
agora varremos a string com os pontos de paradas em virgulas:
String aux = "";
for(i=0; i<msg.length(); i++){
if(msg.charAt(i)!=','){
aux += msg.charAt(i);
}else{
//quando achar uma virgula vc faz o seu tratamento aqui
//e reinicia aux depois da operacao
aux = "";
}
}
o lance é que deve existir um padrão nesse envio de mensagem aí.
ou então vc terá que identificar seus dados um a um e direciona-los para o lugar certo. (tipo: se houver . na string então e um double/bigdecimal)