¿C贸mo convierto un AnsiString a un Array?

cormac
22 de Septiembre del 2003
¿Alguien me puede indicar c贸mo paso el contenido de un TEdit (AnsiString) a una variable tipo char (char var[]) ?

Muchas Gracias!

Sapi
22 de Septiembre del 2003
Mu facil.

Tienes que ir cojiendo caracter a caracter e ir insertando en el array.
Mira las propiedades y metodos de los AnsiStrings en la ayuda:
-longitud.
-getchar.
-etc.

Espero haberte ayudado.

cormac
22 de Septiembre del 2003
Vaya, pues no me sale. Mirad, he probado con algo tipo:

char variable[30];
variable = &(Edit1->Text).c_str();

No s茅 lo que estoy haciendo mal :s . Sorry. y GRACIAS!

seare
22 de Septiembre del 2003
Si a cualquier variable AnsiString le pones detr谩s entre corchetes un nº accedes a ese caracter y lo devuelve en char. Por ejemplo

char a = Edit1->Text[2];

Lo que t煤 quieres, creo que podr铆a ser algo as铆:

char a[30];
for(int i = 0; i < Edit1->Text.Lenght(); i++)
a[i] = Edit1->Text[i];

No lo he probado (ade+ de que siempre me olvido si es Lenght o Length), pero a ver si te sirve...

Victor Ya?
22 de Septiembre del 2003
Te he respondido esta misma duda en mi foro

http://miarroba.com/foros/ver.php?temaid=1066879&foroid=182807/

Hola, que tal si haces esto, ya que de todas maneras no estas definiendo el largo de tu arreglo de caracteres, algo equivalente es esto:


Codigo:----------------------------------------------------------------char *cadena;
cadena = Edit1->Text.c_str();
ShowMessage(cadena);//solo para probar que esta bien
delete cadena;
---------------------------------------------------------------------------