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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27 28 29 30 31 32
231  Programación / Programación C/C++ / Re: Pasar un archivo texto a binario. en: 25 Marzo 2014, 09:37 am
todavía no me sale pero ya casi.

232  Programación / Programación C/C++ / Re: Pasar un archivo texto a binario. en: 25 Marzo 2014, 09:28 am
Si exacto asi tambien lo estaba tratando de hacer y mas facil.

Código
  1. fichero<<nombre;

creo que talvez lo que estoy haciendo mal puede ser esto.

Código
  1. fichero.write(nombre,strlen(nombre));

por que yo estoy leyendo en bin y como no hay datos primero tengo que escribirlos
bueno en este caso pasarlos de txt a binario intentare con lo que me indicas. y comento gracias por la ayuda.
233  Programación / Programación C/C++ / Re: Pasar un archivo texto a binario. en: 25 Marzo 2014, 08:49 am
Si entiendo

Pero como le paso esos los datos al archivo de binario, ya intente el.

ofstream fichero( "fichero.bin", ios::out | ios::binary);

pero no me funciona. por que esta creando el fichero.bin, pero como le paso a ese fichero.bin los datos del txt.

si no es mucha molestia agradeceria algun ejemplo.
saludos y gracias por responder.
234  Programación / Programación C/C++ / Pasar un archivo texto a binario. (Solucionado) en: 25 Marzo 2014, 07:20 am
Hola esta es la siquiente duda que tengo.

quiero hacer esto.



No se como pasar lo que tengo en el txt a un archivo binario. lo de listar si se como hacerlo a si que lo que mas me interesa es hacer la convercion.

y tengo esto

Código
  1. #include <cstdlib>
  2. #include <fstream>
  3. #include <iostream>
  4. #include <iomanip>
  5. #include "Cliente.h"
  6.  
  7. using namespace std;
  8.  
  9. int ArchivoBin();
  10.  
  11. int main(int argc, char *argv[])
  12. {
  13.   //Archivo de texto
  14.   ifstream lectura("Empleados.txt",ios::in);
  15.  
  16.    if(!lectura)
  17.    {
  18.         cout << "Error.  No se pudo"
  19.              << " abrir el archivo."
  20.              << endl;
  21.         system("pause");
  22.         return -1;
  23.    } // Verificación del archivo.
  24.  
  25.    // 2. Leer información.
  26.    int idCliente=0;
  27.    char nombre[20], apellido[20];
  28.    double ingreso;
  29.  
  30.    cout << '\n'
  31.         << setw(10) << "Codigo"
  32.         << setw(15) << "Nombre"
  33.         << setw(15) << "Apellido"
  34.         << setw(15) << "Ingreso L."
  35.         << setw(20) << "Archivo Texto"
  36.         << fixed << setprecision(2)
  37.         << endl;
  38.    for(int i=0; i<55; i++)
  39.        cout << '=';
  40.  
  41.    cout << endl;
  42.  
  43.    lectura >> idCliente
  44.            >> nombre
  45.            >> apellido
  46.            >> ingreso;
  47.  
  48.    while(!lectura.eof())
  49.    {
  50.       cout << setw(10) << idCliente
  51.         << right << setw(15) << nombre
  52.         << setw(15) << apellido
  53.         << setw(15) << ingreso << endl;
  54.  
  55.         lectura >> idCliente
  56.                 >> nombre
  57.                 >> apellido
  58.                 >> ingreso;
  59.    }
  60.  
  61.    lectura.close();
  62.  
  63.    ArchivoBin();
  64.  
  65.    system("PAUSE");
  66.    return EXIT_SUCCESS;
  67. }
  68.  
  69. int ArchivoBin()
  70. {
  71.    ofstream salida ("Empleados.bin", ios::binary);
  72.  
  73.    //Archivo de texto
  74.   ifstream lecturaBin("Empleados.bin", ios::binary);
  75.  
  76.    if(!lecturaBin)
  77.    {
  78.         cout << "Error.  No se pudo"
  79.              << " abrir el archivo."
  80.              << endl;
  81.         system("pause");
  82.         return -1;
  83.    } // Verificación del archivo.
  84.  
  85.    // 2. Leer información.
  86.    Cliente registro;
  87.    int idCliente=0;
  88.    char nombre[20], apellido[20];
  89.    double ingreso;
  90.  
  91.    cout << '\n'
  92.         << setw(10) << "Codigo"
  93.         << setw(15) << "Nombre"
  94.         << setw(15) << "Apellido"
  95.         << setw(15) << "Ingreso L."
  96.         << setw(20) << "Archivo Binario"
  97.         << fixed << setprecision(2)
  98.         << endl;
  99.    for(int i=0; i<55; i++)
  100.        cout << '=';
  101.  
  102.    cout << endl;
  103.  
  104.    lecturaBin.seekg((idCliente - 1) * sizeof(Cliente));
  105.    lecturaBin.read(reinterpret_cast<char *>(&registro), sizeof(Cliente));
  106.  
  107.    while(!lecturaBin.eof())
  108.    {
  109.       cout << setw(10) << idCliente
  110.         << right << setw(15) << nombre
  111.         << setw(15) << apellido
  112.         << setw(15) << ingreso << endl;
  113.  
  114.          lecturaBin.read(reinterpret_cast<char *>(&registro), sizeof(Cliente));
  115.  
  116.    }
  117.  
  118.    lecturaBin.close();
  119.    return 0;
  120. }

espero puedan ayudarme.

estos son los datos en el .txt por si quieren provarlo

1   Davolio   Nancy  900
2   Fuller   Andrew   678
3   Leverling   Janet  3000
4   Peacock   Margaret   78564
5   Buchanan   Steven  7865
6   Suyama   Michael 8000
7   King   Robert  700
8   Callahan   Laura  2000
9   Dodsworth   Anne  12345

y mi salida es esta.


235  Programación / Programación C/C++ / Re: Alinear texto en: 24 Marzo 2014, 23:05 pm
Hola primero comentando a lo que indica eferion del codigo.

Código
  1. // Almacenar datos en archivo.
  2.         archivo << nombreAni << setw(15)
  3.                 << tipoAnimalAni << setw(15)
  4.                 << razaAni       << setw(15)
  5.                 << sexoAni       << setw(15)
  6.                 << colorAni      << setw(15)
  7.                 << edadAni       << setw(15);

Seria demasiado si lo pongo todo. ahora probare lo que comenta yoel y leosansan y comento luego como me fue.

saludos y gracias por contestar.



Hola ya lo logre. agradezco mucho por su ayuda era tan facil como hacer lo siquiente

Código
  1. archivo << setw(10) << "Nombre" << setw(15) << "Animal" << setw(15) << "Raza" << setw(15)
  2.            << "Sexo" << setw(15) << "Color" << setw(15) << "Edad" << setw(23)
  3.            << "Servicio" << setw(16) << "Costo" << endl << endl;

Código
  1. // Almacenar datos en archivo.
  2.         archivo << setw(10) << nombreAni << setw(15)
  3.                 << right << tipoAnimalAni << setw(15)
  4.                 << razaAni       << setw(15)
  5.                 << sexoAni       << setw(15)
  6.                 << colorAni      << setw(15)
  7.                 << edadAni;



el de servicio y costo esta en otra clase asi que por eso no se ve aca.

Saludos y muchas gracias no queria complicarmela con los for.
236  Programación / Programación C/C++ / Re: ayuda en C en: 24 Marzo 2014, 08:03 am
aaaaaaaaah sabia que se tenia que poder

Eso era, saludos sequia viendo porque no me salia.
y era esto printf("EN LA FUNCION FECHA:%d-%d-%d\n", *d, *m, *a);

las referencias como indicas.

Saludos gracias leosansan por sacarme algunas dudas a mi tambien.
237  Programación / Programación C/C++ / Re: ayuda en C en: 24 Marzo 2014, 05:43 am
Hola amigo segun yo y mis pocos conocimientos

Cuando llega a esta instruccion;

printf("%d-%d-%d\n", dia, mes, anho);
lo que le estas pidiendo que haga es eso que imprim
a la direccion en memoria y soy un aprendiz igual que tu dejame aver si te puedo ayudarte ya que pratico C++ y no se casi nada de C.

PD:Re cuerda que la programacion es una serie de instrucciones que se ejecutan secuencial mente no lo olvides cuando tengas o te aparezca un error solo fijate en que parte lo esta haciendo y listo. dejame sequir viendo Saludos.



Hola amigo despues de estar viendo y tratando cosas me di cuenta de algo.

1. Texplico cuando el programa se ejecuta lo primero que hace es empezar por las variables no ok.

2. lo siquiente que hace es llamar a la funcion fecha que tienes tres argunmentos o parametros como quieras llamerles y tu le pasas dia mes y a~no ok.

3 Despues esos argumetos se evaluan en la funcion y te devuelven  la fecha como lo podes notar en la primera imprecion.

4 luego llega al printf es es donde tu te preguntas por que te imprime la direccion no? es por que es el ultimo valor que tomaron las variables, no me entiendes ok si tu vienes y modificas el codigo.

en esta linea y pones

Código
  1. int dia=2, mes=9, anho=8;

veras una salida como esta



es porque en la direccion que se almacen no hay nada pero si inicializas las variables veras los valores con que la inicializaste ya no entra a la direccion de memoria sino al valor de la variable.

Y tambien ese es el objetivo de usar funciones para evitar redundancia de codigo.
tu puedes llamar esa funcion donde la nesecites. Claro dentro del ambito de donde se declare.



espero haber ayudado saludos y cuidate. tambien aprendi saludos.

PD: Recuerda.

un entero tiene (int). 4 Bytes = 4x8 = 32 bits
Con 32 bits se pueden representar 232=4294967296 valores.

238  Programación / Programación C/C++ / Re: ayuda en C en: 24 Marzo 2014, 05:29 am
Hola amigo primero que nada tu pregunta fue

porque en un printf me escribe una cosa diferente del otro printf?

no aclaraste lo que deseabas. Saludos.
239  Programación / Programación C/C++ / Re: ayuda en C en: 24 Marzo 2014, 05:23 am
Ya



si es este las impresiones que te hace la segunda es la direccion en memoria de la funcion fecha en este caso esto apuntado ahi por eso salen eso numero. es la direccion en memoria si no me equivoco.

gracias englex tienes razon cree un proyecto para C++ ahora lo hago en C gracias.

tienes razon lo corri asi

Código
  1. #include <cstdlib>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. #include <time.h>
  7. #include <stdio.h>
  8. /*-------------prototipo de funcion--------------*/
  9. void fecha(int d, int m, int a);
  10. /*-------------algoritmo principal----------------*/
  11.  
  12. int main()
  13. {
  14.    int dia, mes, anho;
  15.  
  16.    fecha(dia, mes, anho);
  17.    printf("%d-%d-%d\n", dia, mes, anho);
  18.  
  19.    system("PAUSE");
  20.    return EXIT_SUCCESS;
  21. }
  22. void fecha(int d, int m, int a)
  23. {
  24.    time_t ahora;
  25.    struct tm *fecha;
  26.    time(&ahora);
  27.    fecha = localtime(&ahora);
  28.    d = fecha->tm_mday;
  29.    m = fecha->tm_mon+1;
  30.    a = fecha->tm_year+1900;
  31.    printf("%d-%d-%d\n", d, m, a);
  32. }
240  Programación / Programación C/C++ / Re: ayuda en C en: 24 Marzo 2014, 04:54 am
Queria ver si te podia ayudar y ver la diferencia de la que hablas de salida pero no me corrio.



claro ya ves porque. vere si lo hago correr


si no me equivoco el error que me salta es por que estoy declarando un puntero de tipo entero como argumento de una funccion. no?
Páginas: 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 [24] 25 26 27 28 29 30 31 32
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines