Autor
|
Tema: leer fichero .txt (Leído 6,701 veces)
|
raquelsg88
Desconectado
Mensajes: 12
|
Hola,
Tengo un fichero .txt y en su contenido una cadena de caracteres, por ejemplo: download_V12.mot.
¿Cómo puedo hacer para leer esa palabra y guardarla en una variable?
unsigned char FL_UPDATE_FILE_NAME; //variable final en la que quiero que esté la palabra del .txt unsigned char version[30];
FILE *pFile;
pFile = fopen("versiones.txt","r"); /* Abre el archivo .txt para lectura de texto */
fgets(version,30,pFile); while (feof(pFile) == 0) { FL_UPDATE_FILE_NAME = fgetc(pFile); } fclose(pFile);
He probado con estas funciones pero no funciona.
Si alguien me ayuda se lo agradezco!
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
¿Quieres guardar una palabra en una sola variable?
Elimina el while y hazlo exactamente igual que con la versión
|
|
|
En línea
|
|
|
|
raquelsg88
Desconectado
Mensajes: 12
|
En el fichero de texto tengo escrito: "download.mot"
Quiero guardar eso en una variable. No sé como hacer para que me coja cada caracter. Solo quiero que me guarde los 14 caracteres en este caso.
FILE *pFile; unsigned char cadena[30]; unsigned char FL_UPDATE_FILE_NAME; pFile=fopen("version.txt","r");
fgets(cadena,30,pFile); FL_UPDATE_FILE_NAME=cadena;
fclose(pFile);
Esto no funciona, el problema creo que está con FL_UPDATE_FILE_NAME. Quiero que FL_UPDATE_FILE_NAME="download.mot", ya que voy a usar ese nombre de fichero para otra cosa.
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
No me has entendido: FILE *pFile; unsigned char version[30]; unsigned char FL_UPDATE_FILE_NAME[15]; pFile =fopen("version.txt","r"); fgets( FL_UPDATE_FILE_NAME ,14,pFile );
|
|
« Última modificación: 3 Junio 2013, 12:42 pm por amchacon »
|
En línea
|
|
|
|
raquelsg88
Desconectado
Mensajes: 12
|
sigue sin funcionar, pero gracias por ayuda
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
sigue sin funcionar, pero gracias por ayuda
Explicate más. ¿Que es lo que pasa cuando ejecutas el programa? ¿Que resultado obtienes? ¿Cual es el contenido del archivo que has usado de prueba?
|
|
|
En línea
|
|
|
|
raquelsg88
Desconectado
Mensajes: 12
|
El programa en un principio era así:
#define FL_UPDATE_FILE_NAME "download.mot"
void R_Fl_Flash_Update(void) { FRESULT res; uint16_t fl_file_rw_cnt;
/* **** Mount the file system **** */
res = R_tfat_f_open(&fl_file, FL_UPDATE_FILE_NAME, (TFAT_FA_OPEN_EXISTING | TFAT_FA_READ)); etc, etc... }
la funcion R_tfat_f_open es caracteristica del micro de renesas que estoy usando, pero es lo mismo que el fopen.
Lo que quiero hacer es que no busque solo el fichero llamado "download.mot", para ello de un fichero .txt leerá lo que hay escrito, que será por ejemplo "update.mot" y después buscará y leerá el fichero con ese nombre y extensión.
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
¡¡, para ello de un fichero .txt leerá lo que hay escrito, que será por ejemplo "update.mot" y después buscará y leerá el fichero con ese nombre y extensión. En C estándar: FILE *pFile; char Nombre[256]; pfile = fopen("archivo.txt"); pfile = fopen(Nombre ); // Abrimos el archivo en cuestión
Doy por hecho de que el nombre está en la primera línea del archivo.
|
|
« Última modificación: 3 Junio 2013, 13:27 pm por amchacon »
|
En línea
|
|
|
|
raquelsg88
Desconectado
Mensajes: 12
|
Nombre no es igual a "download.mot" por lo que nunca se abre ese archivo.
Gracias aun asi
|
|
|
En línea
|
|
|
|
bemone
Desconectado
Mensajes: 74
|
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { ifstream archivo; string contenido; archivo.open("nombre.txt"); archivo >> contenido; cout << contenido; archivo.close(); return 0; }
Por lo que entendí en el archivo download.mot tenes otro nombre de un archivo y luego lo queres abrir? #include <iostream> #include <fstream> using namespace std; #define NOMBRE_ARCHIVO "download.mot" int main() { ifstream archivo, archivo2; char nomArchivo2[256]; archivo.open(NOMBRE_ARCHIVO); archivo >> nomArchivo2; archivo.close(); cout << nomArchivo2; archivo2.open(nomArchivo2); archivo2.close(); return 0; }
|
|
« Última modificación: 3 Junio 2013, 16:15 pm por bemone »
|
En línea
|
Odio los tipos de variable de Windows.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Leer y manipular fichero.txt en C.
Programación C/C++
|
tvirus
|
1
|
4,777
|
8 Diciembre 2010, 23:00 pm
por JuszR
|
|
|
Leer fichero csv
Programación C/C++
|
gonzalo_C
|
0
|
4,492
|
20 Febrero 2012, 17:32 pm
por gonzalo_C
|
|
|
Leer datos de un cierto formato desde un fichero
Programación C/C++
|
javiepe
|
9
|
4,028
|
13 Marzo 2014, 18:58 pm
por Yoel Alejandro
|
|
|
Leer fichero y guardar en variables
Programación C/C++
|
Joaqqinn
|
6
|
5,095
|
13 Enero 2016, 23:43 pm
por Orubatosu
|
|
|
Map: grabar en fichero // Map: leer desde fichero.
Programación C/C++
|
gastongaston
|
0
|
1,792
|
30 Septiembre 2018, 16:03 pm
por gastongaston
|
|