J'ai une image JPEG dans une mémoire tampon [] en mémoire, tout ce que je dois faire est de l'écrire sur le disque exactement tel quel. En ce moment, je fais cela
ofstream ofs; ofs.open(filename); ofs.write(buffer, bufferLen); ofs.close();
5 Réponses :
Définissez le mode sur binaire lorsque vous ouvrez le fichier: p>
http://www.cplusplus.com/reference/iostream/ofstream/ofstream/ofstream / p>
Merci je savais qu'il devait être quelque chose de simple
Vous devez définir le mode fichier sur binaire code> lorsque vous êtes std::ofstream file;
file.open("filename.jpg", std::ios_base::out | std::ios_base::binary);
Essayez d'ouvrir l'Ofstream comme binaire.
Quelque chose comme ça devrait fonctionner:
Puisque vous n'ouvrez pas le fichier en mode binaire, il est défini sur la sortie formatée par défaut. Dans la sortie formatée, votre implémentation effectue la conversion des caractères de fin de ligne que vous décrivez. P>
J'aimerais pouvoir obtenir ma version pour écrire quoi que ce soit du tout ... Aucune erreur, aucune plainte, rien de mal à la déboguer, mais cela n'essaie même pas de créer le fichier. Qu'est-ce qui a tort avec fopen, fwrite et fclose ... Je n'ai jamais eu de problème avec eux p>