| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2189 人关注过本帖
标题:怎么用C++判断一个文件是否为bmp文件?
只看楼主 加入收藏
HBHGIMU
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-8-31
结帖率:0
收藏
已结贴  问题点数:10 回复次数:11 
怎么用C++判断一个文件是否为bmp文件?
RT。。
搜索更多相关主题的帖子: bmp 
2012-08-31 00:18
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:2 
文件头两个字节是字符BM

授人以渔,不授人以鱼。
2012-08-31 00:19
境燕明
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2012-8-29
收藏
得分:2 
这不是人去做的吧!?
2012-08-31 08:29
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:2 
2楼 的方法就可行。
2012-08-31 23:21
hougui
Rank: 1
等 级:新手上路
帖 子:1
专家分:2
注 册:2012-8-10
收藏
得分:2 
2楼 的方法就可行.呵呵
2012-09-01 08:59
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
当然啦,只认BM开头,这是BMP文件的必要条件,但并非充分条件。也就是说,实际上并非以BM开头的文件都必然是BMP图像,它必须存在BMP图像格式的所有元素,才是完整的。你随便拿个文本文件,在最开头写上BM,然后文件改名为.BMP后缀,到资源管理器看看,那是不是被认作图像文件了?但是打开是错误的。做过这个实验,你应该醒悟点什么了。

授人以渔,不授人以鱼。
2012-09-01 10:31
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:2 
楼主你醒悟了没啊

梅尚程荀
马谭杨奚







                                                       
2012-09-01 10:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用有容就大在2012-9-1 10:52:58的发言:

楼主你醒悟了没啊

你明白了么?

授人以渔,不授人以鱼。
2012-09-01 12:42
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:2 
要想100%的判断不大容易 比较好的一个方法就是看这个bmp文件的文件头等东西是否合理 如果合理 比如 文件大小和文件头里面写的是一样的 一般就认为是bmp 也就是认为这个文件是【合法】的bmp

但为啥100%的判断不容易呢 也有一种可能 我把一个文本文件按照bmp文件的格式存起来 文件头等东西都是对的 这样 图片甚至能打开 只不过基本是乱的 这样的 要判断是不是就不容易了

我认为 判断一个bmp文件是否【合法】容易 判断是不是图片文件 难
2012-09-01 12:47
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
在BMP文件中埋藏病毒代码(好像是更广泛的图片格式都可以),在以前曾经发生过,后来据说修复了。如果是自己解析图像文件呈现,最好严格按照文件头格式指示提取数据和解析,不要读入多余的数据,埋藏病毒的文件尺寸比正常的稍大一点,对BMP这种大容量的文件来说,多几百字节,一般不察觉的。

授人以渔,不授人以鱼。
2012-09-01 12:53
快速回复:怎么用C++判断一个文件是否为bmp文件?
数据加载中...
 
   



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

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