delimitadores

Páginas: 7 (1662 palabras) Publicado: 1 de noviembre de 2014
#include <iostream>#include <fstream> // TIENE FUNCIONES DE LECTURA Y ESCRITURA DENTRO DEL ARCHIVO
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
/* cin>> // lectura de numeros cin.getline(cadena, longitud) // para leer tipos de datos char getline(cin, cadena) // para leer tipos de datos string*/
using namespace std;
class Productos{public:
char codigo[10], descripcion[35], precio[15]; //ARREGLOS UNIDIMENSIONALES
void Capturar(); //METODOS
void Mostrar();
void Buscar();
void Eliminar();
void Modificar();
}p;
/////METODO CAPTURAR
void Productos::Capturar() // DE LA CLASE ALUMNO PERTENECE CAPTURAR ESO SIGNIFICAN LOS DOS PUNTOS
{
cout<<"Dame el codigo del producto: ";cin.getline(codigo, 10);
cin.getline(codigo, 10); //EN LUGAR DE FFLUSH X QUE NO SIRVE CON GETLINE PARA LEER CADENAS
cout<<"Dame la descripcion: ";
cin.getline(descripcion,35);
cout<<"Dame el precio: ";
cin.getline(precio,15);
ofstream Archivo("Prodauto.txt",ios::app); // ofstream crea un objeto para escritura en el archivo llamado "Archivo", ios::app = entrada y salidade datos
Archivo<<codigo<<'|'<<descripcion<<'|'<<precio<<'|'; // se escribiendo en el archivo creado campo por campo separado por el delimitador '|'
Archivo.close(); // cerrar el archivo
}
//////METODO MOSTRAR
void Productos::Mostrar()
{
int i;
ifstream Lectura("Prodauto.txt"); // abrir archivo en formato de lectura, "Lectura" que es unobjeto
if(!Lectura.good()) // good ( libreria fstream) nos verifica si hubo problema al abrir el archivo a traves de true o false
{
cout<<"No existe el archivo\n";
system("pause");
}
else {
while(!Lectura.eof()) // eof = end of file
{
//Lectura de la variable user i=0;
do {Lectura.read((char *)&codigo[i],1); //leo el objeto de tipo char, lo asigno a la variable user en la posicion que tenga el subindice, y se lee de caracter en caracter if(Lectura.eof())
break;
i++;
}while(codigo[i-1]!='|'); // mientras user en la posicion del subindice menos 1 sea diferente al delimitador, sigues escribiendoen el arreglo "user"
codigo[i-1]='\0'; // si no se cumple el while anterior, entonces escribe en la posicion del delimitador '\0' que significa final de la cadena para saber que se termino ese campo "user"
//Lectura de la variable pass i=0;
do {
Lectura.read((char *)&descripcion[i],1);if(Lectura.eof())
break;
i++;
}while(descripcion[i-1]!='|');
descripcion[i-1]='\0';
//Lectura de la variable nom i=0;
do {
Lectura.read((char *)&precio[i],1);
if(Lectura.eof())
break;
i++;}while(precio[i-1]!='|');
precio[i-1]='\0';
//Lectura de la variable ape if(Lectura.eof())
break;
//Imprimes valores cout<<endl<<"\nCodigo: "<<codigo<<endl<<"\nDescripcion: "<<descripcion<<endl<<"\nPrecio: "<<precio<<endl<<"\n"; // endl=salto de lineaif(Lectura.eof())
break;
}
system("pause");
}
Lectura.close(); // cierras el archivo a traves del objeto "Lectura"
}
/* PARA BUSCAR POR CUALQUIER ATRIBUTO O VARIABLE SE TIENE QUE RECORRER TODOS LOS CAMPOS DEL REGISTRO CARACTER POR CARACTER */
void Productos::Buscar(){
int b; b = 0; // Bandera
int i; // Contador
int iguales;
char caracter;...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Delimita
  • Delimitaciones de directores
  • delimitantes procesos
  • temas delimitados
  • delimitar un tema
  • Delimitan de un tema, entre otros
  • Delimitaciones de investigacion
  • TEMA DELIMITADO

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS