标题:有关图片的存储和显示(以二进制存到文件中)
只看楼主
卓越电气
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-10-20
结帖率:0
已结贴  问题点数:20 回复次数:5 
有关图片的存储和显示(以二进制存到文件中)
将图片A.JPG以二进制方式保存到文件中,并从文件里读取并显示图片
void CMyView::OnStore()
{
    CFile file;
    file.Open("A.JPG",CFile::modeRead);      //打开图像文件
    DWORD dwDataLen=file.GetLength();        //获取文件的长度
    BYTE *buf=new BYTE[dwDataLen];           //创建数组,用来保存图像的数据
    memset(buf,0x00,dwDataLen);              //初始化数组
    file.ReadHuge(buf,dwDataLen);            //图像文件的数据保存在数组中
    file.Close();                            //关闭文件

    CFile tempfile("temp.jpg", CFile::modeCreate | CFile::modeWrite);//创建文件temp.temp(扩展名任意)
    CArchive ar(&tempfile, CArchive::store); //创建缓冲区
    ar.Write(buf,dwDataLen);          //向缓冲区内写数据,buf为保存图像数据的数组,dwDataLen为数组的长度
    ar.Close();                       //关闭缓冲区
    tempfile.Close();                 //关闭文件
}
上面的函数实现了图片的存储,如何将文件中的数据再显示为图片呢?
求助?该用哪个函数调用这些数组,将数组中的二进制还原为图片?
搜索更多相关主题的帖子: 二进制 图片 file 
2013-08-26 11:04
卓越电气
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-10-20
得分:0 
自己分析:
    首先将文件中的数据放到一个buf中,这个buf也是存的二进制数组。
    该调用哪个函数来显示这些数组中的数据呢?
2013-08-26 11:07
卓越电气
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-10-20
得分:0 
代码该如何写:
void CMyView::OnLoad()
{
    CClientDC dc(this);//有了DC
    .........
    .........
    .........
}
2013-08-26 11:10
卓越电气
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-10-20
得分:0 
小弟在这里求教,有高手么这里,谢谢了,拜托了,小弟是自学的VC++
2013-08-30 21:27
yuccn
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:20 
保存的图片正确把?能否用其他程序打开?
方法很多的,用CImage类比较简单,

楼主要常用百度。
http://bbs.
http://blog.

这里应该有你想要的

我行我乐
我的博客:
http://blog.yuccn. net
2013-08-31 10:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-419660-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017897 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved