//文件是否存在
bool CheckFileExist( const char* filename )
{
return INVALID_FILE_ATTRIBUTES != ::GetFileAttributes(filename);
}
//文件是否为目录
bool IsDirectory(const char* filename)
{
DWORD dwAttr = ::GetFileAttributes(filename);
if (dwAttr == 0xFFFFFFFF) // 文件或目录不存在
return false;
else if (dwAttr&FILE_ATTRIBUTE_DIRECTORY) // 如果是目录
return true;
else
return false;
}
//文件可写
bool CheckFile_CanBe_Writed( const char* filename )
{
if (strFileName.IsEmpty())
return true;
if (CheckFileExist(filename) == FALSE)
return true;
CFile fp;
BOOL br = fp.Open(filename,CFile::shareDenyWrite|CFile::shareDenyRead);//以独占方式写入或打开
if (br == FALSE)
return false;
fp.Close();
return true;
}
//去除只读属性
void RemoveFileOnlyReadAttribute( const char* filename )
{
DWORD dwAttr = GetFileAttributes(filename);
dwAttr &= ~FILE_ATTRIBUTE_READONLY;
SetFileAttributes(filename, dwAttr);
}