La Web del Programador: Comunidad de Programadores
 
    Pregunta:  25357 - COMO LEER ARCHIVOS DESDE EL HD CON UNA APLICACION DECPP
Autor:  Wilfredo Manrique
Cordial Saludo

Quisiera hacerles un solicitud, quiero saber como hacer un programita que me lea un archivo desde el disco duro y que me saque en pantalla o mejor que me genere un archivo de salida como resultado de un procesamiento especial al archivo leido, soy nuevo en este cuento del C++ , agradezco su colaboracion.

Wilfredo Manrique.
Cali-Colombia

  Respuesta:  Matias Ballester
Primero tenes que abrir un archivo para lectura, de la siguiente manera:

char linea[255];
FILE *archivo;

if ( (archivo= fopen( "nombre.txt", "rt")) == NULL)
{
fprintf ( stderr, " No hay memoria\n");
return;
}

lo que mas te conviene es hacer una funcion para leer linea por linea del
archivo. Ejemplo:

cargalinea ( archivo, linea); /*pasas el puntero al archivo, y el puntero
a char */
una vez leido una linea del archivo

while ( ! feof (archivo) ) */ mientras no sea fin de archivo */
{
*/haces lo que vos queres y si lo queres mostrar por pantalla
usas printf();
cargalinea( archivo, linea );
}

Ahora te mustro como se puede hacer la funcion para leer el archivo:

void cargalinea ( FILE *archivo, char *linea)
{
int i=0;
linea [ i ] = fgets (archivo);

while (linea [ i ] ! = ' \n' && linea [ i ] ! = EOF )
{
i ++;
linea [ i ] = fgets (archivo);
}
linea [ i + 1] = '\0';
}

Ante cualquier duda mandame un mail...