Foros del Web » Programación para mayores de 30 ;) » C/C++ »

guardar cadena de un .txt

Estas en el tema de guardar cadena de un .txt en el foro de C/C++ en Foros del Web. Hola, Estoy intentando guardar lo escrito en un fichero .txt en una variable en C. Ejemplo de lo escrito en el .txt; "download.mot" Estoy haciendo ...
  #1 (permalink)  
Antiguo 03/06/2013, 02:41
 
Fecha de Ingreso: junio-2013
Mensajes: 1
Antigüedad: 10 años, 11 meses
Puntos: 0
guardar cadena de un .txt

Hola,

Estoy intentando guardar lo escrito en un fichero .txt en una variable en C.

Ejemplo de lo escrito en el .txt;
"download.mot"

Estoy haciendo lo siguiente pero no funciona.

FILE *pFile;
unsigned char cadena[30],FL_UPDATE_FILE_NAME;

pFile=fopen("version.txt","r");
if(pFile!=NULL)
{
while(!feof(pFile))
{
fgets(cadena,30,pFile);
FL_UPDATE_FILE_NAME=cadena;
}
}
fclose(pFile);

¿Alguien sabe como hacerlo?

Gracias!
  #2 (permalink)  
Antiguo 03/06/2013, 12:37
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 14 años
Puntos: 17
Respuesta: guardar cadena de un .txt

Tienes algún que otro fallo.

La variable FL_UPDATE_FILE_NAME va a almacenar lo mismo que cadena, y a FL_UPDATE_FILE_NAME no le estás dando el [30], para que sean arrays del mismo tamaño.

Estás trabajando con array de char, lo que es un string, entonces no puedes copiar una variable en otra simplemente con =, o haces un bucle del tamaño del array y vas copiando caracter a caracter, o usas las funciones del lenguaje para hacer la copia directa del String.

Al final, lo que estás intentado hacer creo que sería algo como esto:

Código C++:
Ver original
  1. #include <stdio.h>
  2.  
  3. main(){
  4.     FILE *pFile;
  5.     unsigned char cadena[30], FL_UPDATE_FILE_NAME[30];
  6.  
  7.     pFile=fopen("version.txt","r");
  8.     if(pFile!=NULL)
  9.     {
  10.         while(!feof(pFile))
  11.         {
  12.             fgets(cadena,30,pFile);
  13.             strcpy(FL_UPDATE_FILE_NAME, cadena);
  14.             printf("%s \n",FL_UPDATE_FILE_NAME);
  15.         }
  16.     }
  17.  
  18.     fclose(pFile);
  19.     system("PAUSE");
  20. }

Ahí muestro el valor de la variable para comprobar que efectivamente está funcionando.

Espero que te sirva.

Un saludo.

Etiquetas: cadena, funcion, int, txt, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:20.