04 Abril, 2020, 12:52 *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias: LISTADO ACTUALIZADO DE CURSOS
 
 
Páginas: [1]   Ir Abajo
  Imprimir  
Autor Tema: Lectura de un archivo en c++ , no anda urgente!  (Leído 904 veces)
0 Usuarios y 1 Visitante están viendo este tema.
Watt
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 328


Dos numeros manejan el mundo?


Ver Perfil
« : 09 Diciembre, 2009, 19:24 »

Hola disculpen el titulo pero no puedo perder tiempo con este problemita, tengo el siguiente codigo que simplemente lee un archivo de texto.

Código:
#include<iostream>
#include<fstream>

#define MAX 80
#define ARCH "hola.txt"

using namespace std;

int main(void)
{
char buffer[MAX];
fstream obj;

obj.open(ARCH,ios::in);

while(!obj.eof())
{
obj.getline(buffer,MAX);
cout << buffer;
}

cin.get();
return 0;
}

El problema es que al ejecutarse, solo muestra una linea del texto y no hace nada, me estoy comiendo alguna instruccion?.

Desde ya gracias y saludos!.
En línea
Watt
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 328


Dos numeros manejan el mundo?


Ver Perfil
« Respuesta #1 : 09 Diciembre, 2009, 20:48 »

Bueno ya me di cuenta del problema, pero surgio otro quiero leer el mismo arcivho dos veces pero no lo hace, funciona la funcion que deje comentada?


Código:
#include<iostream>
#include<fstream>

#define MAX 100
#define ARCH "hola.txt"

using namespace std;

void leer(fstream*);

int main(void)
{

fstream *obj=new fstream;

obj->open(ARCH,ios::in);

leer(obj);
   
obj->seekg(0,ios::beg); //Vuelve el puntero al inicio del archivo ?

leer(obj); //Esto no lee nada..

cin.get();
return 0;
}

void leer(fstream *obj)
{
char buffer[MAX];

while(!obj->eof())
{
obj->getline(buffer,MAX);
cout << buffer;
}
}

En línea
topo23
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Argentina Argentina

Mensajes: 940


Ver Perfil
« Respuesta #2 : 10 Diciembre, 2009, 01:23 »

Creo que tienes que llamar a obj->clear(), no me acuerdo si es antes o despues del seekg.
En línea

.
Watt
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 328


Dos numeros manejan el mundo?


Ver Perfil
« Respuesta #3 : 12 Diciembre, 2009, 01:02 »

Justamente fue antes , gracias!
En línea
Páginas: [1]   Ir Arriba
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC XHTML 1.0 válido! CSS válido!