StringTokenizer

angra
24 de Octubre del 2002
Hola. Tengo que hacer un programa que haga lo siguiente. Me dan un string del tipo <mensaje remitente="remitente" posicion="posicion" destinatario="destinatario" contenido="contenido">. Es obligatorio mantener el orden y los símbolos <>, así como el orden. Pueden aparecer espacios en blanco entre >< y antes de las variables remitente,etc. Mi programa tiene que comprobar que el string dado está en el orden correcto, y si no lanzar excepciones. Para ello debo partir el string dado utilizando la clase StringTokenizer. Por favor, que alguien me diga como hacerlo. Es urgente.

keko
24 de Octubre del 2002
Hola,
puedes cortar con el tokenizer por los simbolos = .

String miArray[];
StringTokenizer st = new StringTokenizer(miString, "=");
miArray = new String[st.countTokens]

while(st.hasMoreTokens()){
miArray[i] = st.nextToken();
i++;
}

Entonces ya sabes que en cada elemento (menos en el elemento 0), tendras:


miArray[0] = <mensaje remitente
miArray[1] = "remitente" posicion
miArray[2] = "posicion" destinatario
miArray[3] = "destinatario" contenido
miArray[4] = "contenido">

Con estos datos puedes comparar si es igual.
Si te es mas facil, puedes añadir al constructor un tercer argumento 'true', para que te devuelva tambien el delimitador (=).

Saludos,

angra
24 de Octubre del 2002
OK Gracias!!!!!!