首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

写bmp图片的有关问题?

2012-02-27 
写bmp图片的问题????我用fwrite函数写图片的时候,总是写出的格式画图板不认识,写法如下:if((fffopen( xi

写bmp图片的问题????
我用fwrite函数写图片的时候,总是写出的格式画图板不认识,写法如下:
if((ff=fopen( "xin.bmp ", "a "))==NULL)
{
cout < < "can   not   open ";
}


fwrite(pp,1,1078,ff);//pp是图象头的数据
fwrite(data11,1,128*91,ff);//data11是图象数据
其中图象头和图象数据都对,都符合位图的格式,因为是我读的图片的数据,而且已验证,可用fwrite写的时候,得到的文件格式画图板不认识!!
请大家帮忙指正!!

[解决办法]
if((ff=fopen( "xin.bmp ", "ab "))==NULL)
{
cout < < "can not open ";
}

试下。

[解决办法]
if((ff=fopen( "xin.bmp ", "a "))==NULL)
"a "这是把数据追加文件尾

fwrite(data11,1,128*91,ff);//data11是图象数据:每个像素信息你用的是多少位的?32位还是24位?如果用的是24位的,得分成三个字节来单独写。
[解决办法]
fwrite 操作函数要求以 2进制方式操作文件:
if((ff=fopen( "xin.bmp ", "ab "))==NULL) //b, 2进制操作方式

否则fwrite写文件的字符数会出现误差,
导致结果不正确。
[解决办法]
Microsoft的BUG
http://community.csdn.net/Expert/topic/5504/5504186.xml?temp=.2061273

热点排行