rt
我想的是WIN32_FIND_DATA lpAttri;
GetFileAttributesEx(tempFilePath,GetFileExInfoStandard,&lpAttri);
if(lpAttri.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) //是一个文件夹
{
...
}
//tempFilePath是文件路径,比如是c:\xx\yy\12,现在就是要判断12是文件还是文件夹但判断不了啊,高手指导下~
我想的是WIN32_FIND_DATA lpAttri;
GetFileAttributesEx(tempFilePath,GetFileExInfoStandard,&lpAttri);
if(lpAttri.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) //是一个文件夹
{
...
}
//tempFilePath是文件路径,比如是c:\xx\yy\12,现在就是要判断12是文件还是文件夹但判断不了啊,高手指导下~
这种情况下GetFileAttributesEx最后一个参数应该指向WIN32_FILE_ATTRIBUTE_DATA结构,不知道函数内部是否有判断,还是换成WIN32_FILE_ATTRIBUTE_DATA试试比较好。
返回值为0,不是文件夹.
attr&FILE_ATTRIBUTE_DIRECTORY
if (0 == _taccess(tszFn, 0)) { // You should include <io.h> at first.
# if 1
FILE *fp = NULL; if( (fp = fopen(tszFn, "rb")) == NULL)
{
TRACE("fopen: directory.");
}
else
{
fclose(fp); TRACE("fopen: file.");
}
# endif # if 1
// You should include "Shlwapi.h" and add Shlwapi.lib to your project.
WIN32_FIND_DATA wfd;
FindFirstFile(tszFn, &wfd);
if (FILE_ATTRIBUTE_DIRECTORY & wfd.dwFileAttributes)
{
TRACE("FindFirstFile: directory.");
}
else
{
TRACE("FindFirstFile: file.");
}
# endif # if 1
BOOL bIsDirectory = ::PathIsDirectory(tszFn);
if (bIsDirectory)
{
TRACE("PathIsDirectory: directory.");
}
else
{
TRACE("PathIsDirectory: file.");
}
# endif
}
这是我找的一个网页,希望对你有帮助。
http://topic.csdn.net/t/20040627/01/3125681.html