2010-11-28 14 views
9

He estado intentando durante meses encontrar una pequeña biblioteca C o C++ para E/S de archivo binario independiente de la plataforma, eso significa intercambio endian y con tipos de tamaño fijo .Biblioteca C/C++ para E/S de archivo binario independiente de la plataforma

Sé que enormes bibliotecas como wxWidgets y Qt las tienen, y que idiomas como Java y C# también las tienen, pero preferiría usar una pequeña biblioteca en lugar de un enorme framework.

+0

Oh, han pasado más de 7 años ... ¿Lo has encontrado? – kbec

Respuesta

1

¿Por qué no usar simplemente fstream que viene incluido con todos los compiladores de C++? Usted acaba de configurar el indicador ios :: binary y hacer un uso abundante de sizeof para que sea independiente del sistema operativo. Ej .: http://courses.cs.vt.edu/~cs2604/fall02/binio.html y http://www.codersource.net/c/c-tutorial-on-file-operations/c-file-i-o-binary-files-using-fstream.aspx

+1

En mi experiencia, usar fstream se vuelve muy desordenado (líneas largas y repetitivas, montones de conversiones), incluso sin manejar cosas dependientes de la plataforma. – testtesttes

+1

No es necesario traducir IMO de entrada binaria. Solo ve a la biblioteca estándar aquí. – rubenvb

+2

Porque es un gran dolor en el culo, y ni siquiera funciona con binario sin recurrir a hacks desagradables como lanzar el int a un char ... – MarcusJ

3

Tenga una mirada en Boost.Serialization

Uno de sus objetivos es "Datos de Portabilidad - flujos de bytes creados en una plataforma debe ser legible en cualquier otro."

También hay enlaces a otras bibliotecas que proporcionan una funcionalidad similar.

+10

¡Guau! qué ejemplo perfecto de una * minúscula * biblioteca para I/O :) – valdo

1

Para la mayoría del trabajo formato de archivo Yo prefiero usar SQLite: http://www.sqlite.org/ Lo interesante es que puede acceder al mismo archivo de datos en múltiples sistemas operativos y lenguajes de programación y dispositivos.

+0

SQLite no es útil para almacenar el tipo de datos como volúmenes de vóxeles –

Cuestiones relacionadas