SlideShare una empresa de Scribd logo
//Ejemplode unmanejadorde archivosde textoenC++;guarda el contenidodel encabezadode
facturas con camposbásicos,recuperatodosucontenidodesplegándoloenpantallaybuscauna
factura enparticular;
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sstream>
usingnamespace std;
classfactura {
public:
intfolio;
char nom [30];
char rfc [15];
char dir [30];
floatsubtotal;
floativa;
floattotal;
char arch [30];
factura();
voidcaptura();
voidlectura();
voidbuscar();
};
factura::factura() {
intfolio=0;
strcpy (nom,"");
strcpy (rfc,"");
strcpy (dir,"");
subtotal=0;
iva=0;
total=0;
strcpy(arch,"e:factura.txt");
}
voidfactura::captura() {
FILE *a;
char cadena[200];
char buffer[50];
strcpy(cadena,"");
strcpy(buffer,"");
cout<<"Capture factura"<<endl;
cout<<"Folio:";
cin>>folio;
fflush(stdin);
cout<<"Nombre:";
cin>>nom;
fflush(stdin);
cout<<"RFC: ";
cin>>rfc;
fflush(stdin);
cout<<"Direccion:";
cin>>dir;
fflush(stdin);
cout<<"Subtotal:";
cin>>subtotal;
fflush(stdin);
iva=subtotal*0.16;
total=subtotal+iva;
cout<<"IVA:"<<iva<<endl;
cout<<"Total: "<<total<<endl;
cout<<"Captura Terminada"<<endl;
itoa(folio,buffer,10);
strcat(cadena,buffer);
strcat(cadena,"n");
strcat(cadena,nom);
strcat(cadena,"n");
strcat(cadena,rfc);
strcat(cadena,"n");
strcat(cadena,dir);
strcat(cadena,"n");
sprintf(buffer,"%f",subtotal);
strcat(cadena,buffer);
strcat(cadena,"n");
strcat(cadena,buffer);
strcat(cadena,"n");
sprintf(buffer,"%f",total);
strcat(cadena,buffer);
strcat(cadena,"n");
a=fopen(arch,"a+");
fputs(cadena,a);
fclose(a);
}
voidfactura::buscar() {
char id[20];
cout<<endl<<"Buscarnumerode factura: ";
cin>>id;
FILE *a;
char cadena[200];
a=fopen(arch,"r");
fgets(cadena,200,a);
while (!feof(a)){
intn1=0, n2=0;
stringstreamgeek(id);
geek>> n1;
stringstreamgeek2(cadena);
geek2>> n2;
if (n1==n2) {
cout<<"Factura encontrada..."<<endl;
cout<<"Folio:"<<cadena<<endl;
fgets(cadena,200,a);
cout<<"Nombre:"<<cadena<<endl;
fgets(cadena,200,a);
cout<<"RFC: "<<cadena<<endl;
fgets(cadena,200,a);
cout<<"Direccion:"<<cadena<<endl;
fgets(cadena,200,a);
cout<<"Subtotal:"<<cadena<<endl;
fgets(cadena,200,a);
cout<<"IVA:"<<cadena<<endl;
fgets(cadena,200,a);
cout<<"Total:"<<cadena<<endl;
fclose(a);
return;
}
fgets(cadena,200,a);
}
fclose(a);
cout<<"Factura no encontrada..."<<endl;
return;
}
voidfactura::lectura() {
FILE *a;
char cadena[200];
cout<<"Descripcionde Factura"<<endl;
a=fopen(arch,"r");
fgets(cadena,200,a);
while (!feof(a)){
cout<<cadena;
fgets(cadena,200,a);
}
cout<<"Archivode Factura terminado"<<endl;
fclose(a);
}
intmain(intargc,char** argv) {
factura f;
intopcion;
while (true) {
cout<<"Que desearealizar?1)captura,2)lectura,3)buscar, 4)salir:" ;
cin>>opcion;cout<<endl;
if (opcion==1) {
f.captura();
}
else
if (opcion==2) {
f.lectura();
}
else
if (opcion==3) {
f.buscar();
}
else
if (opcion==4) {
break;
}
}
cout<<endl<<"Terminado..."<<endl;
system("pause");
return0;
}

Más contenido relacionado

La actualidad más candente (18)

estructura lineal lenguaje C
estructura lineal lenguaje Cestructura lineal lenguaje C
estructura lineal lenguaje C
 
AsignacióN DináMica
AsignacióN DináMicaAsignacióN DináMica
AsignacióN DináMica
 
P1
P1P1
P1
 
Arrays csharp visto_desde_c
Arrays csharp visto_desde_cArrays csharp visto_desde_c
Arrays csharp visto_desde_c
 
Ejemplos c++
Ejemplos c++Ejemplos c++
Ejemplos c++
 
Arreglos
ArreglosArreglos
Arreglos
 
Reserva y liberación de memoria
Reserva y liberación de memoriaReserva y liberación de memoria
Reserva y liberación de memoria
 
Funcionesen codeblocks ejerciciosresueltos
Funcionesen codeblocks ejerciciosresueltosFuncionesen codeblocks ejerciciosresueltos
Funcionesen codeblocks ejerciciosresueltos
 
Proyecto redes
Proyecto redesProyecto redes
Proyecto redes
 
Problema c++
Problema c++Problema c++
Problema c++
 
Derivada Polinomios en C
Derivada Polinomios en CDerivada Polinomios en C
Derivada Polinomios en C
 
Funciones
FuncionesFunciones
Funciones
 
Primera clase
Primera clasePrimera clase
Primera clase
 
Puenteros en c++
Puenteros en c++Puenteros en c++
Puenteros en c++
 
Programa en c de listas
Programa en c de listasPrograma en c de listas
Programa en c de listas
 
Resultado de una raiz
Resultado de una raizResultado de una raiz
Resultado de una raiz
 
C++
C++C++
C++
 
áRboles binariosdebusqueda
áRboles binariosdebusquedaáRboles binariosdebusqueda
áRboles binariosdebusqueda
 

Similar a POO U6 - Archivos de texto ejemplo en C++

ESTRUCTURAS DE CONTROL: BUCLES EN C++
ESTRUCTURAS DE CONTROL: BUCLES EN C++ESTRUCTURAS DE CONTROL: BUCLES EN C++
ESTRUCTURAS DE CONTROL: BUCLES EN C++
die_dex
 
Unidad16 Codigof1
Unidad16 Codigof1Unidad16 Codigof1
Unidad16 Codigof1
martha leon
 
Ejemplos Importantisimo
Ejemplos  ImportantisimoEjemplos  Importantisimo
Ejemplos Importantisimo
martha leon
 
Coloreo
ColoreoColoreo
Coloreo
Jorge
 

Similar a POO U6 - Archivos de texto ejemplo en C++ (20)

Ficheros C++
Ficheros C++Ficheros C++
Ficheros C++
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
ESTRUCTURAS DE CONTROL: BUCLES EN C++
ESTRUCTURAS DE CONTROL: BUCLES EN C++ESTRUCTURAS DE CONTROL: BUCLES EN C++
ESTRUCTURAS DE CONTROL: BUCLES EN C++
 
Factura en borland c++
Factura en borland c++Factura en borland c++
Factura en borland c++
 
PROYECTO DE LISTA LINEAL DOBLE
PROYECTO DE LISTA LINEAL DOBLEPROYECTO DE LISTA LINEAL DOBLE
PROYECTO DE LISTA LINEAL DOBLE
 
5... reglas de produccion
5... reglas de produccion5... reglas de produccion
5... reglas de produccion
 
Curso c ii
Curso c iiCurso c ii
Curso c ii
 
Unidad16 Codigof1
Unidad16 Codigof1Unidad16 Codigof1
Unidad16 Codigof1
 
Ejemplos Importantisimo
Ejemplos  ImportantisimoEjemplos  Importantisimo
Ejemplos Importantisimo
 
Ejemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlEjemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stl
 
Coloreo
ColoreoColoreo
Coloreo
 
Informe tecnico
Informe tecnicoInforme tecnico
Informe tecnico
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenas
 
Cadenas y punteros.ppt
Cadenas y punteros.pptCadenas y punteros.ppt
Cadenas y punteros.ppt
 
Cpp
CppCpp
Cpp
 
Cpp
CppCpp
Cpp
 
Programación C++
Programación C++Programación C++
Programación C++
 
Informe minishell
Informe minishellInforme minishell
Informe minishell
 

Más de José Antonio Sandoval Acosta

Más de José Antonio Sandoval Acosta (20)

Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
 
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptxUNIDAD 2 CLASIFICACION DE LOS  MATERIALES.pptx
UNIDAD 2 CLASIFICACION DE LOS MATERIALES.pptx
 
croquis de aulas UAIM topolobampo FEB 2024
croquis de aulas UAIM topolobampo  FEB 2024croquis de aulas UAIM topolobampo  FEB 2024
croquis de aulas UAIM topolobampo FEB 2024
 
Ing. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 MódulosIng. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 Módulos
 
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
 
Ing. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujoIng. Mecatrónica, Prog. Básica U3 control de flujo
Ing. Mecatrónica, Prog. Básica U3 control de flujo
 
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
 
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmosIng. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
Ing. Mecatrónica, Prog. Básica U1; Conceptos basicos y algoritmos
 
Manual de prácticas y antología para POO
Manual de prácticas y antología para  POOManual de prácticas y antología para  POO
Manual de prácticas y antología para POO
 
Aplicaciones móviles intro.
Aplicaciones móviles intro.Aplicaciones móviles intro.
Aplicaciones móviles intro.
 
Economia
EconomiaEconomia
Economia
 
ISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptxISCA-quimica-Equipo 2.pptx
ISCA-quimica-Equipo 2.pptx
 
Plantilla presentación.pptx
Plantilla presentación.pptxPlantilla presentación.pptx
Plantilla presentación.pptx
 
kitchenham.pptx
kitchenham.pptxkitchenham.pptx
kitchenham.pptx
 
Diagrama de Casos de Uso UML
Diagrama de Casos de Uso UMLDiagrama de Casos de Uso UML
Diagrama de Casos de Uso UML
 
Introducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UMLIntroducción al Diagrama de Clases UML
Introducción al Diagrama de Clases UML
 
Diagrama de clases UML
Diagrama de clases UMLDiagrama de clases UML
Diagrama de clases UML
 
Diagrama UML Casos de Uso
Diagrama UML Casos de UsoDiagrama UML Casos de Uso
Diagrama UML Casos de Uso
 
Tema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdfTema 3 - Comandos básicos.pdf
Tema 3 - Comandos básicos.pdf
 
Tema 1 - Intro.pdf
Tema 1 - Intro.pdfTema 1 - Intro.pdf
Tema 1 - Intro.pdf
 

Último

Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdf
frankysteven
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
DianaSG6
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
frankysteven
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vapor
alema3825
 
PETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacionPETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacion
ctrlc3
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccion
alberto891871
 

Último (20)

GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTASGUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
 
Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdf
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
 
Deusto Ingeniería 24 (Año 2023) - Universidad de Deusto
Deusto Ingeniería 24 (Año 2023) - Universidad de DeustoDeusto Ingeniería 24 (Año 2023) - Universidad de Deusto
Deusto Ingeniería 24 (Año 2023) - Universidad de Deusto
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vapor
 
Instalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a pasoInstalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a paso
 
Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!
 
PETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacionPETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacion
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccion
 
DESVIACION
DESVIACION DESVIACION
DESVIACION
 
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdfSISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
 
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDFACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
 
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagneticoPresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
 
Efecto. Fotovoltaico y paneles.pdf
Efecto.     Fotovoltaico  y  paneles.pdfEfecto.     Fotovoltaico  y  paneles.pdf
Efecto. Fotovoltaico y paneles.pdf
 
Sistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdfSistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdf
 
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
 

POO U6 - Archivos de texto ejemplo en C++

  • 1. //Ejemplode unmanejadorde archivosde textoenC++;guarda el contenidodel encabezadode facturas con camposbásicos,recuperatodosucontenidodesplegándoloenpantallaybuscauna factura enparticular; #include <iostream> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <sstream> usingnamespace std; classfactura { public: intfolio; char nom [30]; char rfc [15]; char dir [30]; floatsubtotal; floativa; floattotal; char arch [30]; factura(); voidcaptura(); voidlectura(); voidbuscar(); }; factura::factura() { intfolio=0; strcpy (nom,""); strcpy (rfc,""); strcpy (dir,""); subtotal=0; iva=0; total=0; strcpy(arch,"e:factura.txt"); } voidfactura::captura() { FILE *a; char cadena[200]; char buffer[50]; strcpy(cadena,""); strcpy(buffer,""); cout<<"Capture factura"<<endl; cout<<"Folio:"; cin>>folio; fflush(stdin); cout<<"Nombre:";
  • 2. cin>>nom; fflush(stdin); cout<<"RFC: "; cin>>rfc; fflush(stdin); cout<<"Direccion:"; cin>>dir; fflush(stdin); cout<<"Subtotal:"; cin>>subtotal; fflush(stdin); iva=subtotal*0.16; total=subtotal+iva; cout<<"IVA:"<<iva<<endl; cout<<"Total: "<<total<<endl; cout<<"Captura Terminada"<<endl; itoa(folio,buffer,10); strcat(cadena,buffer); strcat(cadena,"n"); strcat(cadena,nom); strcat(cadena,"n"); strcat(cadena,rfc); strcat(cadena,"n"); strcat(cadena,dir); strcat(cadena,"n"); sprintf(buffer,"%f",subtotal); strcat(cadena,buffer); strcat(cadena,"n"); strcat(cadena,buffer); strcat(cadena,"n"); sprintf(buffer,"%f",total); strcat(cadena,buffer); strcat(cadena,"n"); a=fopen(arch,"a+"); fputs(cadena,a); fclose(a); } voidfactura::buscar() { char id[20]; cout<<endl<<"Buscarnumerode factura: "; cin>>id; FILE *a; char cadena[200]; a=fopen(arch,"r"); fgets(cadena,200,a); while (!feof(a)){ intn1=0, n2=0;
  • 3. stringstreamgeek(id); geek>> n1; stringstreamgeek2(cadena); geek2>> n2; if (n1==n2) { cout<<"Factura encontrada..."<<endl; cout<<"Folio:"<<cadena<<endl; fgets(cadena,200,a); cout<<"Nombre:"<<cadena<<endl; fgets(cadena,200,a); cout<<"RFC: "<<cadena<<endl; fgets(cadena,200,a); cout<<"Direccion:"<<cadena<<endl; fgets(cadena,200,a); cout<<"Subtotal:"<<cadena<<endl; fgets(cadena,200,a); cout<<"IVA:"<<cadena<<endl; fgets(cadena,200,a); cout<<"Total:"<<cadena<<endl; fclose(a); return; } fgets(cadena,200,a); } fclose(a); cout<<"Factura no encontrada..."<<endl; return; } voidfactura::lectura() { FILE *a; char cadena[200]; cout<<"Descripcionde Factura"<<endl; a=fopen(arch,"r"); fgets(cadena,200,a); while (!feof(a)){ cout<<cadena; fgets(cadena,200,a); } cout<<"Archivode Factura terminado"<<endl; fclose(a); } intmain(intargc,char** argv) { factura f; intopcion; while (true) { cout<<"Que desearealizar?1)captura,2)lectura,3)buscar, 4)salir:" ;
  • 4. cin>>opcion;cout<<endl; if (opcion==1) { f.captura(); } else if (opcion==2) { f.lectura(); } else if (opcion==3) { f.buscar(); } else if (opcion==4) { break; } } cout<<endl<<"Terminado..."<<endl; system("pause"); return0; }