当我测试以下代码时,我发现“FtpFindFirstFile”中的“data.cFileName”是“。” 在某些 ftp 和其他 ftp 上,它是一个实际文件名。在第二种情况下,“InternetFindNextFile”以第二个文件开头。我只想知道为什么会发生这种情况?谢谢!
if(hConnect){
cout<<"begin transfer……"<<endl;
find=::FtpFindFirstFile(hConnect,ftpDir,&data,INTERNET_FLAG_RELOAD,0);
cout<<"begin?-->"<<data.cFileName<<endl;
while(::InternetFindNextFile(find,&data)){
CString tempFtp=ftpDir;
CString tempLocal=localDir;
cout<<"file:"<<data.cFileName<<endl;
//dirArray.SetSize(10);
/*
if(data.dwFileAttributes==FILE_ATTRIBUTE_DIRECTORY){
cout<<"filename:"<<data.cFileName<<";"<<endl;
if(CString(data.cFileName).Find("..")<0){
cout<<"folder:"<<data.cFileName<<";"<<endl;
}
}else{
//this->checkMakePath(tempLocal);
tempFtp.Append(data.cFileName);
tempLocal.Append(data.cFileName);
cout<<"file:"<<tempLocal<<endl;
//::FtpGetFile(hConnect,tempFtp,tempLocal,false,FILE_ATTRIBUTE_NORMAL,FTP_TRANSFER_TYPE_BINARY,0);
}*/
}
}