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

Ayuda con ejercicio (archivos)

Estas en el tema de Ayuda con ejercicio (archivos) en el foro de C/C++ en Foros del Web. Buenas, este es mi primer post, tengo el siguiente programa, pero no me genera el .dat que quiero...no sé realmente donde está el error, el ...
  #1 (permalink)  
Antiguo 28/06/2010, 12:16
 
Fecha de Ingreso: junio-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Pregunta Ayuda con ejercicio (archivos)

Buenas, este es mi primer post, tengo el siguiente programa, pero no me genera el .dat que quiero...no sé realmente donde está el error, el compilador no me indica ningún error de sintaxis (utilizo dev c++ 4)...

Código C++:
Ver original
  1. #include <iostream.h>
  2. #include <stdlib.h>
  3. #include <fstream.h>
  4. #include <conio.c>
  5. typedef struct vendedor{
  6.  
  7.     char CodigoVendedor[3];
  8.     char Nombre[40];
  9.     float ImporteVenta;
  10.  };
  11.  
  12. void main(){
  13.    int n;
  14.    vendedor vendedores[100];
  15.    cout<<"Numero de vendedores: ";
  16.    cin>>n;
  17.    ofstream archivo1("C:\registros\vendedor.dat");
  18.    for(int i=0;i<n;i++)
  19.    {
  20.      cout<<"Codigo de Vendedor: ";cin>>vendedores[i].CodigoVendedor;
  21.      cout<<"Nombre: "; cin>>vendedores[i].Nombre;
  22.      cout<<"Importe de Ventas: ";cin>>vendedores[i].ImporteVenta;
  23.      archivo1.write( (char *)(&vendedores[i]), sizeof(vendedores));
  24.    }
  25.    archivo1.close();
  26.    getch();
  27. }

Muchas gracias

Última edición por diegoalv; 28/06/2010 a las 12:22 Razón: Utilizar etiqueta highlight
  #2 (permalink)  
Antiguo 28/06/2010, 17:10
 
Fecha de Ingreso: junio-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Ayuda con ejercicio (archivos)

Si alguno pudiera probar el código para saber si funciona y les crea el archivo .dat me sería de gran ayuda.
Gracias :)
  #3 (permalink)  
Antiguo 28/06/2010, 20:34
 
Fecha de Ingreso: enero-2008
Mensajes: 229
Antigüedad: 16 años, 7 meses
Puntos: 1
Respuesta: Ayuda con ejercicio (archivos)

es pregunta tonta pero tienes el directorio "c:\registros" creado?
si es asi, bueno pues el error es muy simple en C++/C cuando tu escribes una cadena de caracter y kieres que '\' sean leidas textualmente, entoces debes escribirlas doble de la siguiente forma
ofstream archivo1("C:\\registros\\vendedor.dat");
El motivo es muy simple, \ pueden ser utilizados para secuencias de escape, como por ejemplo
'\n' representa un salto linea
'\t' tabulador
'\r' retorno de carro
Tambien te sugiero que imediatamente despues de tratar de abrir un archivo verifiques si efectivamente se abrió. en este caso puedes utilizar el metodo is_open(), para verificar.
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 13:09.