C++ Builder中目录处理的一些函数[VC/C++编程]
本文“C++ Builder中目录处理的一些函数[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在编程时,常常有一些针对目录的操作,如翻开目录对话框挑选一个目录,直接成立多级目录,直接删除多级目录,判断某个目录能否存在等.本文就这些问题给出编程实现办法,并给出具体的程序代码,供各位编程爱好者参考.
1、判断目录能否存在:
C++ Builder中供应了查抄文件能否存在的函数FileExists,但没有供应查抄目录能否存在的函数,我们可以用Windows API函数FindFirstFile实现这个功效.程序实现以下:
设char *Dir为带判断的目录
bool Exist; // 最后后果,表示目录能否存在
if(Dir[strlen(Dir)]=='\\')Dir[strlen(Dir)-1]='\0'; // 先删除最后的“\”
WIN32_FIND_DATA wfd; // 查找
HANDLE hFind=FindFirstFile(Dir,&wfd);
if(hFind==INVALID_HANDLE_VALUE)Exist=false; // 没有找到装备,目录必定不存在
else
{
if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) // 查抄找到的后果能否目录
Exist=true; // 是目录,目录存在
else
Exist=false; // 是目录,目录不存在
FindClose(hFind);
}
2、翻开目录挑选对话框挑选一个目录:
大多专业软件在要求输入目录的编辑框旁都放了一个按钮,点击后翻开一个目录窗口,很多编程爱好者也但愿能掌握这个办法.实现这个功效要调用Windows API函数SHBrowseForFolder,完好声明为WINSHELLAPI LPITEMIDLIST WINAPI SHBrowseForFolder(LPBROWSEINFO lpbi),返回一个ITEMIDLIST范例的指针,通过这个指针调用函数SHGetPathFromIDList可以肯定所挑选的目录的全名称.入参为BROWSEINFO构造的指针,这个构造较为复杂,成员以下所示:
以上是“C++ Builder中目录处理的一些函数[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |