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

Imprimir datos de un archivo

Estas en el tema de Imprimir datos de un archivo en el foro de C/C++ en Foros del Web. Hola a todos! Tengo un pequeño problema con la lectura de archivos en un programa en C. He creado un archivo de texto (*.txt) del ...
  #1 (permalink)  
Antiguo 07/12/2008, 06:09
Avatar de calathea  
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 15 años, 6 meses
Puntos: 3
Imprimir datos de un archivo

Hola a todos!

Tengo un pequeño problema con la lectura de archivos en un programa en C.

He creado un archivo de texto (*.txt) del cual quiero imprimir TODO su contenido por pantalla en el programa. Mi problema es que no se qué función tengo que utilizar para mostrarlo por pantalla

Tengo una ligera idea...de utilizar un bucle para que me lo vaya imprimiendo por lineas, por ejemplo, pero tampoco se cómo indicar qué linea quiero que me imprima

Cuento también con un archivo *.dat, pero ese no se si está bien creado, porque lo hice yo misma cambiándole al *.txt la extensión por .dat...

Muchas gracias!

No se si servirá de algo...pero todas las lineas del archivo comienzan por los mismos caracteres | BB y finalizan también por los mismos !! |
  #2 (permalink)  
Antiguo 07/12/2008, 06:42
Avatar de calathea  
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Imprimir datos de un archivo

estuve buscando entre las faqs y encontre varias funciones para hacerlo...
opté por fgets() pero creo que no la he usado bien...xq se me cuelga el programa...

este es el código de la función:
Código:
void bienvenido()
{
	char *s={0};
	int n;   //no se en que inicializarlo
	FILE *ptr;
	ptr = fopen(BIENVENIDO_TXT, "r");
	if (ptr == NULL)
	{
		printf ("Error, no se puede abir el archivo %s\n", BIENVENIDO_TXT);
	}
	*fgets(*s, n, ptr);
	fclose(ptr);
}
NOTA: BIENVENIDO_TXT lo tengo definido al principio del programa de la siguiente forma:
#define BIENVENIDO_TXT "../BaseDatos/BIENVENIDO.txt"


Si alguien pudiera decirme dónde he cometido los errores se lo agradería un monton! (exceptuando que n no está inicializado, que eso ya lo se...pero no se en qué inicializarlo)
Un saludo!!

Última edición por calathea; 07/12/2008 a las 06:55
  #3 (permalink)  
Antiguo 07/12/2008, 09:33
 
Fecha de Ingreso: febrero-2006
Mensajes: 49
Antigüedad: 18 años, 2 meses
Puntos: 1
Respuesta: Imprimir datos de un archivo

Buenasss

Con respecto al archivo de texto (.txt) la funcion es muy simple...
Código HTML:
void printFile (FILE * file)
{
    int c;

    while ((c = fgetc (file)) != EOF)
        putchar(c);
}
Espero te haya servido
Saludos
  #4 (permalink)  
Antiguo 07/12/2008, 09:47
Avatar de calathea  
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Imprimir datos de un archivo

sii!!! muchisimas gracias, ya me funciona!!

sabes xq las barras verticales | me aparecen tal cual están dibujadas en el teclado (osea, divididas a la mitad...como si fueran dos barritas, una encima de otra)??? Esque en otras partes del programa las he imprimido mediante el uso de caracteres con un %c al que le asignaba el 179, y de esta forma aparecían continuas...

muchas gracias x tu respuesta!
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 14:38.