Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Duda sobre AnsiString

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Duda sobre AnsiString Responder citando

Hola Alfonso,
Mirando tu código, creo que debiera funcionar con:

for ( int i = 1; i<=5 ; i++) {
AnsiString aux = "FinalPath" +
AnsiString(i);
RichEdit1->Lines->LoadFromFile(aux);
}

Para ir viendo qué cadenas se van generando, podrías mostrarlas, provisoriamente, con un ShowMessage(aux);

Suerte...
Alejandro

Volver arriba
Mensaje    Asunto: Duda sobre AnsiString Responder citando

Hola foro para variar dejo una duda en el foro.

Si tenemos 5 variables de tipo AnsiString
por ejemplo:

AnsiString FinalPath1; // = "C:\\Pantilla\\FicheroFinal1\\f1.txt";

AnsiString FinalPath2; // = "C:\\Pantilla\\FicheroFinal2\\f2.txt";

AnsiString FinalPath3; // = "C:\\Pantilla\\FicheroFinal3\\f3.txt";

AnsiString FinalPath4; // = "C:\\Pantilla\\FicheroFinal4\\f4.txt";

AnsiString FinalPath5; // = "C:\\Pantilla\\FicheroFinal5\\f5.txt";

Ahora quiero acceder a cada valor de las variables y para no repertir 5 veces el mismo código utilizo un bucle for
for ( int i = 1; i<=5 ; i++){
AnsiString aux = (AnsiString) "FinalPath" +i;
RichEdit1->Lines->LoadFromFile(aux);
}

Pero me da error de que no puede acceder al valor ya que aux = "FinalPath2" no es igual
a "C:\\Pantilla\\FicheroFinal1\\f1.txt";

Alguien me puede decir cómo puedo acceder a este valor.

Gracias por leer el mensaje

Volver arriba
Mensaje    Asunto: Duda sobre AnsiString Responder citando

Gracias Alejandro por la ayuda
pero
AnsiString aux = "FinalPath" +
AnsiString(i);

es lo mismos que
AnsiString aux = "FinalPath" + i;

y me sigue dando lo mismo, al final he decidido usar un vector de AnsiStrings.

AnsiString vector[5] = {FilePaht1,..,FilePath5}

y así si funciona.

Aún continuo con la mosca de como se hará

De todos modos muchas gracias


Volver arriba
Mensaje    Asunto: Duda sobre AnsiString Responder citando

Eso que dices es imposible, no puedes usar una cadena AnsiString para usarla como el nombre de una variable aunque sea el nombre de una variable tipo AnsiString. Por eso se hicieron los vectores. La única forma posible que se me ocurre es esta
void __fastcall TForm1::Button2Click(TObject *Sender)
{
AnsiString FinalPath[5];
for (int i=0;i<5;i++)
FinalPath[i]="C:\\Pantilla\\FicheroFinal1\\f"+AnsiString(i)+".txt";
for (int i=0;i<5;i++)
RichEdit1->Lines->LoadFromFile(FinalPath[i]);
}

Pero veo un absurdo este programa, siempre va a abrir el último fichero.

Volver arriba
Mensaje    Asunto: Duda sobre AnsiString Responder citando

Bueno a mí se me ocurre algo con TList...
Me voy a ahorrar la explicación ya que está en la ayuda...

Vete a help.. index TList.. en el método add

listo

Quisiera que no solo lo haga el interesado sino las demás personas que respondan...

joseluisbz@bigfoot.com

Volver arriba
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.