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

Leer archivo binario

Estas en el tema de Leer archivo binario en el foro de C/C++ en Foros del Web. Hola a todos, Necesitaría leer un archivo binario, generado con c++ pero no tengo conocimientos de dicho lenguaje , ya que programo en VB. El ...
  #1 (permalink)  
Antiguo 31/10/2011, 15:04
 
Fecha de Ingreso: octubre-2011
Mensajes: 2
Antigüedad: 12 años, 6 meses
Puntos: 0
Leer archivo binario

Hola a todos,

Necesitaría leer un archivo binario, generado con c++ pero no tengo conocimientos de dicho lenguaje , ya que programo en VB. El programador que genera el fichero binario lo hace con la siguiente rutina:

long CurePlan::Sencillo(AnsiString DestinationFile)
{
unsigned long implantCount;

struct implant {
double x, y, z;
double tilt, nothing, turn;
} implantStored;

Space.SetStentReferenceFrame(implants, (HeadFlags & efMandibula) != 0);

chmod(DestinationFile.c_str(), S_IREAD|S_IWRITE) ;
int fd = open(DestinationFile.c_str(), O_WRONLY|O_CREAT|O_TRUNC|O_BINARY);

implantCount = implants->Count;
write(fd, &implantCount, sizeof(implantCount));

for (int i = 0 ; i < implants->Count ; i++) {
Implant *imp = implants->Item(i);

// No need to correct for the lengt of implant + abutment,
// because the implant position is the top
AFMTvector<> position = imp->PositionF;
AFMTvector<> direction = imp->DirectionF;

// X and Y coordinates are swapped in robot mind
if (Space.Flags & efMaxilla) {
implantStored.x = position.y;
implantStored.y = position.x;
implantStored.z = position.z;
} else {
implantStored.x = position.y;
implantStored.y = position.x;
implantStored.z = - position.z;
}

implantStored.tilt = imp->TiltF;
if ((implantStored.turn = imp->TurnF + 180.0) >= 360.0) implantStored.turn -= 360.0;
implantStored.nothing = 0.0;

write(fd, &implantStored, sizeof(struct implant));
}

close(fd);
chmod(DestinationFile.c_str(), S_IREAD|S_IWRITE);

return ResetError() ;
}

... Los datos que contiene necesito pasarlos a ASCII... si alguien puede ayudarme, se lo agradecería

Un cordial saludo,

Jaime Rodríguez
  #2 (permalink)  
Antiguo 01/11/2011, 11:56
 
Fecha de Ingreso: octubre-2011
Mensajes: 5
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Leer archivo binario

disculpen mi ignorancia pero en c o c++, no se usaba fopen o ifstream para leer archivo, si es asi entonces como es que lee archivos con chmod y open, es una libreria que desconosco.

Regresando a tu duda, en c o c++, se leen archivos con fopen o ifstream,si usas fopen el archivo se escanea con fread, y si usas ifstream creo que tambien(solo por un detallito), puedes consultar en san Google o ver en wiki [URL="http://es.wikipedia.org/wiki/C%2B%2B"]http://es.wikipedia.org/wiki/C%2B%2B[/URL].

nota: si usas fopen, tienes que incluir la libreria <studio.h>, y si usas ifstream tienes que incluir <fstream>

Etiquetas: binario, programa, string, struct
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 23:38.