Partendo dal presupposto che gli oggetti String sono immutabili (quindi non possono proprio cambiare), il problema è che tu hai inserito dei punti e virgola dopo la definizione dell'if:
codice:
if( !trovatoTipo )
{
if( riga.startsWith( "<messaggio1>" ) )
{
fai qualcosa
}
if( riga.startsWith( "<messaggio2>" ) ); <-- PUNTO E VIRGOLA??
{
fai qualcos'altro
}
if( riga.startsWith( "<messaggio3>" ) ); <-- PUNTO E VIRGOLA??
{
fai qualcos'altro ancora
}
}
....
Questo fa sì che l'istruzione IF dia effettivamente false, ma il blocco di istruzioni che seguono non hanno più nulla a che fare con essa, che termina appunto nel punto e virgola.
Ciao.