GetFileAttributes
DWORD d= GetFileAttributes(_T("D:\\zz.txt"));/*
参数:LPCTSTR lpFileName指定的文件或目录名称
对于ANSI版本,名字不能大于MAX_PATH
*/
if (d= INVALID_FILE_ATTRIBUTES) {
AfxMessageBox(_T("失败"));
}
我的问题:文件是存在的 显示“失败”?
根据你提供的代码,如果文件"D:\\zz.txt"存在,那么显示"失败"的问题可能出现在以下几个方面:
1. 编译环境:请确认你的编译环境是否正确设置,并且能够找到相应的头文件和库文件。
2. 文件路径:确保文件路径"D:\\zz.txt"是正确的。注意反斜杠(\)在字符串中需要转义,所以用两个反斜杠表示一个反斜杠。例如:"D:\\\\zz.txt"。
3. 文件权限:检查一下该文件是否有读取权限。如果没有适当的权限,将无法获取文件属性。
4. 错误处理:你的代码中判断 d 是否等于 INVALID_FILE_ATTRIBUTES 的方式不正确。应该使用比较运算符 == 来进行判断,而不是赋值运算符 =。修改为 if (d == INVALID_FILE_ATTRIBUTES)。
综上所述,请检查编译环境、文件路径、文件权限和错误处理,并尝试解决这些问题。
如果问题已经解决,请设置最佳答案 问题解答:
根据您提供的代码,出现问题的地方在于判断文件属性的条件语句中有一个错误。在C++中,=是赋值操作符,而不是判断相等的操作符。因此,您应该将条件语句中的if (d= INVALID_FILE_ATTRIBUTES)修改为if (d == INVALID_FILE_ATTRIBUTES),使用双等号来进行相等性比较。
修正后的代码如下所示:
DWORD d = GetFileAttributes(_T("D:\\zz.txt"));
if (d == INVALID_FILE_ATTRIBUTES) {
AfxMessageBox(_T("失败"));
}
这样修改后,程序会正确判断文件属性并显示相应的消息框。请注意检查文件路径和名称是否正确,确保文件存在于指定的位置。
希望这能解决您的问题!如果还有其他疑问,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要!{:10_254:}{:10_254:}{:10_254:}
页:
[1]