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

Como leer un TXT en turbo C++ y almacenar la informacion en una variable entera

Estas en el tema de Como leer un TXT en turbo C++ y almacenar la informacion en una variable entera en el foro de C/C++ en Foros del Web. Hola Foro, espero me puedan dar una ayuda con esto: Estoy usando Turbo C++ Tengo un archivo TXT de la siguiente manera: 15 4 2009 ...
  #1 (permalink)  
Antiguo 15/04/2009, 10:23
Avatar de laureano59  
Fecha de Ingreso: febrero-2005
Mensajes: 395
Antigüedad: 19 años, 2 meses
Puntos: 1
Pregunta Como leer un TXT en turbo C++ y almacenar la informacion en una variable entera

Hola Foro, espero me puedan dar una ayuda con esto:

Estoy usando Turbo C++

Tengo un archivo TXT de la siguiente manera:

15
4
2009

Lo quenecesito es asignar cada línea del archivo TXT a variables de tipo entero así:

Dia=15;
Mes =4;
Ano=2009;


en pocas palabras y me puedan entender:

quiero poder almacenar los datos del TXT en estas variables (Dia, Mes, Ano)

Muchas gracias por sus ayudas.
__________________
http://www.weblaum.com
Laureano Melo Medina
:arriba:
  #2 (permalink)  
Antiguo 15/04/2009, 11:33
Avatar de Claw  
Fecha de Ingreso: abril-2009
Mensajes: 299
Antigüedad: 15 años
Puntos: 9
Respuesta: Como leer un TXT en turbo C++ y almacenar la informacion en una variable e

De TurboC++ no se, pero de C++ algo entiendo. Lo que te recomiendo que hagas es meterte en un bucle que pare cuando encuentre el fin de fichero. Dentro de ese bucle lees cada línea y dependiendo de la línea que sea pues se lo asignas a Dia, Mes o Ano.

Salu2

PD: creas una variable entera fuera del bucle inicializada a 1. Cada vez que lees una línea, almacenas el valor en la variable que corresponda y aumentas su valor. Antes de almacenarla preguntas qué valor tiene esa variable entera para saber a quién se lo asignas.
  #3 (permalink)  
Antiguo 15/04/2009, 13:26
Avatar de laureano59  
Fecha de Ingreso: febrero-2005
Mensajes: 395
Antigüedad: 19 años, 2 meses
Puntos: 1
Respuesta: Como leer un TXT en turbo C++ y almacenar la informacion en una variable e

Algo así tengo pero el problema es que no he podido convertirlo a entero
adjunto una parte del codigo.

necesito convertir la variable linea a char que es la que contiene los datos del archivo TXT datosfile[i]=linea; como linea es de tipo string al hacerlo con atoi no lo reconoce, asi que no se como manipular ese dato de tipo string, si fuera de tipo char pues na habria problema

ESPERO QUE ALGUIEN ME PUEDA AYUDAR

#include <fstream.h>

void main()
{
int i=0;

char datosfile[4];

string linea,datos;


ifstream MiArchivo ("D:\\DATO.TXT");

if (MiArchivo.is_open())
{
//Mientras que no sea fin de archivo
while (! MiArchivo.eof() )
{
getline (MiArchivo,linea);
cout << linea << endl;
datosfile[i]=linea;// como convierto linea a char

i++;
}
MiArchivo.close();
}
else printf ("No se pudo abrir el archivo.");
__________________
http://www.weblaum.com
Laureano Melo Medina
:arriba:
  #4 (permalink)  
Antiguo 15/04/2009, 15:59
Avatar de Claw  
Fecha de Ingreso: abril-2009
Mensajes: 299
Antigüedad: 15 años
Puntos: 9
Respuesta: Como leer un TXT en turbo C++ y almacenar la informacion en una variable e

Para convertir un char a entero (es decir, que el caracter '2' sea en realidad el número 2), existen las funciones atoi y itoa que convierten de char a entero y a la inversa respectivamente.

Salu2
  #5 (permalink)  
Antiguo 15/04/2009, 16:29
Avatar de fradve  
Fecha de Ingreso: abril-2009
Mensajes: 157
Antigüedad: 15 años
Puntos: 7
Respuesta: Como leer un TXT en turbo C++ y almacenar la informacion en una variable e

Hola,


Que te parece esta variación de tu programa, solo no utilicemos string emplea solo char de esta manera, y la conversión la haces con las funciones que mecionó claw.

Código c++:
Ver original
  1. #include<iostream.h>
  2. #include<fstream.h>
  3. #include<stdio.h>
  4. #include<string.h>
  5. #include<conio.h>
  6.  
  7. void main()
  8. {
  9.   int i=0;
  10.  
  11.   char linea[10];
  12.   char dat[10][10]={""};
  13.  
  14.   ifstream MiArchivo;
  15.  
  16.   MiArchivo.open("c:\\prueba.txt");
  17.  
  18.  
  19.   if (!MiArchivo.fail())
  20.   {
  21.     while (!MiArchivo.eof() )
  22.     {
  23.       MiArchivo.getline(linea,sizeof(linea));
  24.       cout << linea << endl;
  25.       strcpy(dat[i],linea);
  26.       i++;
  27.     }
  28.     MiArchivo.close();
  29.   }
  30.   else
  31.    printf ("No se pudo abrir el archivo.");
  32.   getch();
  33. }


Espero que te sea de ayuda...
  #6 (permalink)  
Antiguo 15/04/2009, 20:17
Avatar de laureano59  
Fecha de Ingreso: febrero-2005
Mensajes: 395
Antigüedad: 19 años, 2 meses
Puntos: 1
Respuesta: Como leer un TXT en turbo C++ y almacenar la informacion en una variable e

fradve Muchas gracias por responder.

Esa es la solución, no sabia como usar char en lugar de string.

por eso no podia usar atoi porque al convertir no reconocia el dato de tipo string pero ya todo con tipo char es mucho mas sencillo.

Gracias de nuevo.
__________________
http://www.weblaum.com
Laureano Melo Medina
:arriba:
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 19:13.