BMP à SHP - Ecriture de n bytes ds un fichier, Taille constatée: n+1 - C - Programmation
Marsh Posté le 02-03-2004 à 17:53:41
retour à la ligne malheureux
et pas de 4 ou de 8
sizeof(int) ou sizeof(double), c'est plus lisible déjà
Marsh Posté le 02-03-2004 à 19:12:41
http://forum.hardware.fr/hardwaref [...] -47213.htm
Sujet à double !
Marsh Posté le 02-03-2004 à 17:51:32
(Précision qui n'apporte rien à la compréhension du pb, mais à la curiosité d'ordre générale:
J'ecris un fichier au format .shp à partir d'un bmp)
Pour écrire mon fichier shp qui contient des int et des doubles, j'utilise respectivement fwrite(&unInt, 4, 1, fich) et fwrite(&unDouble, 8, 1, fich), avec un swap de mes octets, en fonction du Byte Order.
Jusque là no souci.
J'en ecris quelques uns dans mon fichier test, 60 int, et 26 double
Ce qui nous fait si je sais encore compter : 60*4+26*8 = 268 bytes
Or mon fichier de sortie en contient 269.. Et là ça ne va plus, puisque mon shp n'est plus lisible.
J'edite mon fichier en hexa, et je me rends compte que vient s'insérer le byte 0D entre le 3eme et 4eme byte de mon fichier. Si au hasard je vire ce byte indésirable, mon fichier contient bien sûr 268 bytes, et miraculeusement devient lisible.
D'où peut venir ce 0D (13 en décimale..) à la con en 4eme position ?
---------------
A ver...