Ver Mensaje Individual
  #1  
Antiguo 30-01-2010
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Reputación: 18
NEG1414 Va por buen camino
Leer archivo Binario de una vez

Buenas...

Tengo un archivo binario en el que he guardado un numero muy grande de chars (unos 70000000).
Al recuperar los datos del archivo, si lo hago char a char me consume una gran cantidad de tiempo por el acceso a disco.
Para ahorrar tiempo he pensado acceder a disco la menor cantidad de veces posible (Una vez la ideal). para ello pense crear una variable arreglo de chars lo mas grande posible.El arreglo mas grande de Chars que creo que se puede no es ni por asomo la cantidad necesaria para leerlo de una vez,de todas formas he reducido el numero de accesos a disco y con el el tiempo de ejecucion.

He intentado hacer un arreglo de chars de la forma

Código:
  char *buffer;
  buffer = (char*)malloc(sizeof(char)*700000000);

  Archivo.read((char *)(&buffer),sizeof(buffer));

 for (unsigned int a=1;a<700000000;) 
  {
    char dat = buffer[a]; 
  }
La lectura no da problemas pero en cuanto asigno el primer char de buffer a dat me da error.
¿Que hago mal?..¿Es posible leer el archivo de una vez?

Gracias.
Responder Con Cita