读书人

fopen 总是返回一个空值解决办法

发布时间: 2012-06-19 14:45:20 作者: rapoo

fopen 总是返回一个空值
char cFileName[255];
memset(cFileName,0,sizeof(cFileName));
//GetCurrentPath(cFileName);
strcat(cFileName+strlen(cFileName),"Logs\\");
sprintf(cFileName+strlen(cFileName),"%04d",st.wYear);
sprintf(cFileName+strlen(cFileName),"%02d",st.wMonth);
sprintf(cFileName+strlen(cFileName),"%02d",st.wDay);
strcat(cFileName+strlen(cFileName),"_Log");
strcat(cFileName+strlen(cFileName),cFileNameAdd);
strcat(cFileName+strlen(cFileName),".txt");

FILE *fLogStream;
fLogStream= fopen(cFileName,"at");
if (fLogStream==NULL)
{
Sleep(500);
//再次重试
fLogStream= fopen(cFileName,"at");
}
看了很久 ,都看不出问题 出在哪里

[解决办法]
Logs 那个目录存在吗?
[解决办法]
Logs 目录存在吗?
[解决办法]
打开模式:"at"是什么意思?没见过以该种模式打开文件的。
如果文件打开失败,有可能是文件的路径有问题,或者是文件不存在。
[解决办法]

探讨

不存在,目录不存在,它不是会自动创建吗

[解决办法]
会的。

读书人网 >C++

热点推荐