Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


archivos en visual c++, Apuntes de Programación Informática

Los archivos en C++ tienen una connotación especial, por su naturaleza deben crearse en un dispositivo físico para de esa forma ser recuperados cuantas veces sea necesario. ➢ Muchas veces los procesos creados en una aplicación queda solo en la memoria temporal.

Tipo: Apuntes

2020/2021

Subido el 12/05/2023

shark-1672
shark-1672 🇵🇪

1 documento

1 / 11

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
ARCHIVOS
ARCHIVOS CON VISUAL C++ 2019
Ing Daniel Osorio Maldonado
pf3
pf4
pf5
pf8
pf9
pfa

Vista previa parcial del texto

¡Descarga archivos en visual c++ y más Apuntes en PDF de Programación Informática solo en Docsity!

ARCHIVOS

ARCHIVOS CON VISUAL C++ 2019

Ing Daniel Osorio Maldonado

Archivos

➢ Los archivos en C++ tienen una connotación especial, por su naturaleza deben crearse en

un dispositivo físico para de esa forma ser recuperados cuantas veces sea necesario.

➢ Muchas veces los procesos creados en una aplicación queda solo en la memoria temporal.

➢ En C++, existen las clases que manejan los archivos:

*ifstream-> solo para flujos de entrada

*ofstream->solo para flujos de salida

*fstream->para flujos de entrada y salida

➢ Existen dos tipos de archivos de uso general:

➢ Archivos de texto o Secuenciales

➢ Archivos Binarios o Aleatorios

ARCHIVOS DE TEXTO

➢ Se les dice también archivos secuenciales, es decir la información grabada es del

tipo texto.

➢ Se accede a la información desde un block de notas o cualquier procesador de

textos formateado o no.

➢ Objetos o comandos a usar

➢ #include

fstream objarchi -> crea un enlace para usar el método open() objarchi.open(“nomb_archi”,ios::out); -> crea el archivo “nomb_archi” y lo ubica en

el lugar donde se encuentra la aplicación para crear archivos.

if(objarchi.fail()) -> necesario para que crear el archivo, si no existe sale de la

aplicación.

objarchi<<”Creando informacion para el archivo “<<endl; -> Agrega ionformacion al

archivo creado “nombarchi”,

despues de haber ingresado informacion se hace necesario cerrar.

objarchi.close();

Aplicaciones

//Creando un archivo basico
#include //libreria para la creacion de archivos
#include<stdlib.h>
#include
using namespace std;
void main() {
ofstream myarchi;
myarchi.open("Nuevo14_10_2021.txt", ios::out);
if (myarchi.fail()) {
cout << "No es posible la Apertura ";
exit(1);
else
myarchi << "Ingrese Valores " << endl
<<"Son Valores del Dia 14 de Octubre del 2021 "
<<"Realizado en la tarde con la seccion B ";
myarchi.close();
system("pause");}
//Añadir Texto al final de un archivo
#include
#include<stdlib.h>
#include<stdio.h>
#include
#include
using namespace std;
void anyadir();
void main(){
system("pause");
anyadir();
cout<<endl;
system("pause");
void anyadir(){
ofstream archi;
archi.open("g:\parchi\prueba02.txt",ios::app);//Abrir el archivo para añadir
if(archi.fail()){
cout<<"El archivo no existe ";
system("pause");
exit(1);
archi<<"Debo agregar esta linea "<<endl;
archi.close();

Archivos Binarios

➢ Los archivos binarios almacenan información en bloques de bytes o byte a

byte, en lugar hacerlo como caracter por caracter.

➢ Además esta forma de acceder a la información es muy importante sobre

todo si se trata de recuperar la información que no es texto simple.

➢ Son por ejemplo, los ejecutable, un mapa de bits, etc.

➢ para acceder a ellos se debe utilizar el programa que los creo un programa

que lea este tipo de archivo.

//Leyendo lo escrito en Iniciando 1
#include
#include<stdlib.h>
#include
using namespace std;
void main(){
int r;float k;double m,t,W;

ifstream bina0("binArchi.bin",ios::binary);

archi.read((char*)&r,sizeof(int));
archi.read((char*)&k,sizeof(float));
archi.read((char*)&m,sizeof(double));
archi.read((char*)&t,sizeof(double));
archi.read((char*)&W,sizeof(double));
cout<<"El entero es "<<r<<endl
<<"El flotante es "<<k<<endl
<<"Un double "<<m<<endl
<<"Una Operacion = "<<t<<endl
<<"Operacion con raices "<<W<<endl;

bina0.close();

system("pause");

<>Recuperando la información grabada con el

comando “read”

<> archi.read((char*)&r,size(int)); ->Lee la

información en la posición que fue enviada.

#include #include<stdlib.h> #include using namespace std; struct sDatos{ int Codigo; char Nombre[20]; float Sueldo; };

void main(){ sDatos EstDat; fstream Obj("filebin.dat ", ios::in | ios::out | ios::binary | ios::app); if (Obj.fail()) { cout << "Error de Apertura de filebin.dat " << endl; exit(0); } // Ingreso de Datos while (1) { cout << " Ingrese Código <0 Salir> : "; cin >> EstDat.Codigo; cin.get(); if (EstDat.Codigo == 0) break; cout << "Ingrese Nombre : "; cin.getline(EstDat.Nombre, 20); cin.get(); cout << "Ingrese Sueldo :"; cin >> EstDat.Sueldo; cin.get(); Obj.write((char*)&EstDat, sizeof(EstDat)); // Graba un Registro en Archivo y avanza puntero Obj.close(); } system("pause");}

En esta aplicación usaremos una estructura

para grabar archivos binarios.

Se deja como ejercicio leer la información

almacenada