Mensaje    Asunto: AnsiString ¿Caracter fin de cadenas? Responder citando

Hola, mi problema es el siguiente:

Tengo implementado este operador

//-----------------------------------------------------------------

ostream & operator<<(ostream & os,const TMiClase & miclase)
{
os<<"["<<miclase.propiedad1<<","
os<<propidedad2"<<","<<cs.comentario<<"]";
}

el opeador << crea una salida así
[p1,p2,...,pn,comentario] donde comentario es un AnsiString

El problema llega cuando implemento el operador >> (de entrada) que va a leer los datos con el formato anterior.

char c;
is>>c; //para leer '[';
is>>miclase.propiedad1;
is>>c;//para lee ',';
.
is>>miclase.comentario;
.
.
cuando intento leer el comentario me lee el comentario y todo lo que hay despues de el, en este caso el caracter ']', ¿Hay algún caracter que pueda introducir antes de ']' para solucionar esto? he probado con \0x00 y con alguno mas pero no funciona.

Muchas gracias por adelantado.