elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Abrir y leer un archivo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Abrir y leer un archivo  (Leído 2,176 veces)
Cas980

Desconectado Desconectado

Mensajes: 6



Ver Perfil
Abrir y leer un archivo
« en: 23 Febrero 2014, 05:52 am »

Hola, esta semana empece a trabajar con archivos. Tengo este codigo que crea un archivo
Código:
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
#include <fstream>
#include <cstring>
#include <sstream>

struct alu
{
char nombre[30];
int edad;
float altura;
};

alu vec[10];

main()
{
int x,y,orden,n;

printf("Cuantas personas desea ingresar?: ");
scanf("%i",&n);
printf("\n");
ofstream fsalida("Datos.alu.dat",ios::out|ios::binary);

for (x=0; x<n;x++)
{
printf("Introduce el nombre: ");
setbuf(stdin,NULL);
gets(vec[x].nombre);

printf("Introduce la edad: ");
scanf("%i",&vec[x].edad);

printf("Introduce la altura: ");
   cin>>vec[x].altura;

printf("\n\n");

fsalida.write(reinterpret_cast<char *>(&vec[x]),sizeof (alu));

}
fsalida.close();


ifstream fentrada ("Datos_alu.dat",ios::in |ios::binary);
for (x=0; x<n;x++)//Imprimir

{
fentrada.read(reinterpret_cast<char *>(&vec[x]),sizeof(alu));

printf ("Nombre: %s\n",vec[x].nombre);
printf ("Edad: %i\n",vec[x].edad);
printf ("Altura %.1f\n",vec[x].altura);
printf("\n\n");

}
fentrada.close();

getch();

}

Como puedo hacer otro programa pero que esta vez lea el archivo "Datos.alu.dat" sume las edades, imprima y lo guarde en el mismo archivo.
No tengo muy claro como hacer que abra el archivo  y lo lea para poder manejar las edades.


« Última modificación: 18 Abril 2014, 23:32 pm por Cas980 » En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Abrir y leer un archivo
« Respuesta #1 en: 23 Febrero 2014, 16:48 pm »

esta semana empece a trabajar con archivos. Tengo este codigo [...]
Código
  1. // ...
  2.  
  3. ifstream fentrada ("Datos_alu.dat",ios::in |ios::binary);
  4. for (x=0; x<n;x++)//Imprimir{
  5.   fentrada.read(reinterpret_cast<char *>(&vec[x]),sizeof(alu));
  6.  
  7.   printf ("Nombre: %s\n",vec[x].nombre);
  8.   printf ("Edad: %i\n",vec[x].edad);
  9.   printf ("Altura %.1f\n",vec[x].altura);
  10.   printf("\n\n");
  11. }
  12. fentrada.close();
  13.  
  14. // ...
Como puedo hacer otro programa pero que esta vez lea el archivo "Datos.alu.dat" sume las edades, imprima y lo guarde en el mismo archivo. No tengo muy claro como hacer que abra el archivo  y lo lea para poder manejar las edades.
Ese programa tiene varias deficiencias como mezclar C y C++, la recomendación aquí es leer el tema |Lo que no hay que hacer en C/C++. Nivel basico|. También deberías conseguir un buen curso o libro sobre C++, recomendaciones sobre ellos las puedes consultar mediante el motor de búsqueda de los foros.

Aparte de eso en el programa hay un error lógico ya que los nombres del archivo de salida "Datos.alu.dat" y entrada "Datos_alu.dat" no coinciden. En cuanto a la lectura de un archivo no debes tener problemas ya que esa operación ya la realizas en tu programa (en la parte que cite).

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
leer un archivo txt « 1 2 3 »
Programación Visual Basic
RED_HORSE 22 8,195 Último mensaje 14 Abril 2006, 22:06 pm
por RED_HORSE
Como abrir y leer un fichero de texto en visual basic?
Programación Visual Basic
El_Marine 4 2,466 Último mensaje 29 Septiembre 2006, 13:13 pm
por WarGhost
Leer archivo .civ « 1 2 »
Programación Visual Basic
Tyrz 13 4,988 Último mensaje 9 Septiembre 2007, 12:54 pm
por Tyrz
como abrir un archivo tipo archivo ??
Dudas Generales
claros10 2 17,200 Último mensaje 3 Septiembre 2011, 04:40 am
por claros10
Abrir archivo, leer datos y modificarlos en otro archivo.
Java
Tonyskater 6 5,866 Último mensaje 24 Mayo 2017, 20:25 pm
por Tonyskater
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines