C++代码功能块备忘

来源:互联网 发布:卡乐购卡盟源码 编辑:程序博客网 时间:2024/06/03 20:24

1. 遍历文件中图片,包括文件有文件的情况:

void find(char *lpPath){char szFind[MAX_PATH];char szFile[MAX_PATH];WIN32_FIND_DATAA FindFileData;strcpy(szFind,lpPath);strcat(szFind,"/*.*");HANDLE hFind = ::FindFirstFileA(szFind,&FindFileData);if(INVALID_HANDLE_VALUE == hFind) return ;while(TRUE){if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY){if(FindFileData.cFileName[0] != '.'){strcpy(szFile,lpPath);strcat(szFile,"/");strcat(szFile,FindFileData.cFileName);find(szFile);}}else{                       cout<<FindFileData.cFileName<<endl;                 }if(!FindNextFileA(hFind,&FindFileData)) {break;}        }FindClose(hFind); }

2. 创建文件夹,如果没有创建,有则不创建:

CreateDirectory(buffer,NULL);
其中buffer需要为LPCWSTR类型的路径,从string 转到 LPCWSTR类型看如下代码:

3. 从string到LPCWSTR:

size_t size= path.length();wchar_t *buffer = new wchar_t[size+1];MultiByteToWideChar(CP_ACP,0,path.c_str(),size,buffer,size*sizeof(wchar_t));buffer[size] = 0;
其中path为string类型的路径,最后用完buffer后记得delete

delete buffer;



原创粉丝点击