请问如何判断OpenDialog中选中的文件的类型

amartapple 2002-11-30 10:31:46
不如说,如果我选了一个bmp文件,我怎么才能知道我选的是bmp,而不是别的
谢谢
...全文
105 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
amartapple 2002-12-04
  • 打赏
  • 举报
回复
thx
tsk 2002-12-04
  • 打赏
  • 举报
回复

帮你UP!

jllimin 2002-12-04
  • 打赏
  • 举报
回复
up!
amartapple 2002-12-03
  • 打赏
  • 举报
回复
继续讨论
amartapple 2002-12-02
  • 打赏
  • 举报
回复
to:zbc
但是在我这里不对呀

运行崩溃,Debugger Exception Notification 信息如下:
project project1.exe raised exception class EMCIDeviceError with message '无法通过给定的扩展名确定设备类型'
请问该怎么办

amartapple 2002-12-01
  • 打赏
  • 举报
回复
MatchesMask是在哪里声明的
是不是要包含什么文件
编译出错,未定义函数
s98231106 2002-12-01
  • 打赏
  • 举报
回复
if(ExtractFileExt(OpenDialog1->FileName)=="bmp")
........
ExtractFileExt(OpenDialog1->FileName)这是取得文件的后缀民
zbc 2002-12-01
  • 打赏
  • 举报
回复
第一位朋友已经帮你解决了。你也该揭贴了吧?:)
tsk 2002-12-01
  • 打赏
  • 举报
回复
我也很感兴趣!但不能光靠扩展名来确定!

怎样读取 文件头信息呢?
shclhs 2002-11-30
  • 打赏
  • 举报
回复
学习
勉励前行 2002-11-30
  • 打赏
  • 举报
回复
TO: shclhs(龙海神)
小心一點,慎重一點:
if(ExtractFileExt(OpenDialog1->FileName).UpperCase ==".BMP")
KingOf007 2002-11-30
  • 打赏
  • 举报
回复
我想应该是
if(ExtractFileExt(FileName).UpperCase() ==".TXT")
......
cdws222 2002-11-30
  • 打赏
  • 举报
回复
if(MatchesMask(sr.Name,"*.bmp"))
{
这是BMP文件
}
else
{
只有傻子才会把这个文件当做BMP文件
}
shclhs 2002-11-30
  • 打赏
  • 举报
回复
我倒,你的信誉值那么多。
if(ExtractFileExt(OpenDialog1->FileName)=="bmp")
........
ExtractFileExt(OpenDialog1->FileName)这是取得文件的后缀民
amartapple 2002-11-30
  • 打赏
  • 举报
回复
up
amartapple 2002-11-30
  • 打赏
  • 举报
回复
cdws222的方法可以接受,当然,如果能确定更好
请cdws222写一段完整的代码 参考一下
可以这么写
if(OpenDialog->Execute())
{
..判断是否为bmp;
}
wyb_45 2002-11-30
  • 打赏
  • 举报
回复
打开的文件头两位字节是
0x42 0x4D才是BMP图片
myy 2002-11-30
  • 打赏
  • 举报
回复
to:cdws222

楼主没有你这么肯定吧......

我觉得还是应该结合自己的具体情况判断。
cdws222 2002-11-30
  • 打赏
  • 举报
回复
对呀,就是字符串判断呀,请看一下标题,人家就是要这种东东嘛,好像没有严格到要看文件倒低是不是BMP呀
MatchesMask

MatchesMask()
  原型:extern PACKAGE bool __fastcall MatchesMask(const AnsiString Filename, const AnsiString Mask);

  功能:检查文件是否与指定的文件名格式匹配

  参数:FileName:要处理的文件名;Mask:文件名格式,支持通配符

  例:ShowMessage(MatchesMask("Lxf.exe","*.?x?));//显示"true"
amartapple 2002-11-30
  • 打赏
  • 举报
回复
to:cdws222
你的方法我看不懂呀,帮助里也没找到,你仔细说一下吧,sorry
加载更多回复(7)

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧