C++代码功能块备忘
2012-12-11 15:55
447 查看
1. 遍历文件中图片,包括文件有文件的情况:
2. 创建文件夹,如果没有创建,有则不创建:
3. 从string到LPCWSTR:
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;
相关文章推荐
- 【代码备忘】今天突然写的一个比较奇葩的C++ 代码,模版,friend,友元...
- 【代码备忘】C++ fstream 读写 unicode 文件
- C/C++代码静态检查工具Cppcheck在VS2013开发环境中的安装配置和使用
- 选择排序-c++代码实现及运行实例结果
- Google的c++代码规范
- c++代码批量修改图片名称(重命名)实例及运行结果
- c++代码在不同编译器之间的移植的小故事 - 循环变量
- C、C++代码格式优化软件---献给编程爱好者
- 使用astyle格式化C++代码
- 《算法》C++代码 Dijkstra
- vs2013 c++小代码运行完了不退出的方法
- c/c++代码中执行cmd命令
- 冒泡排序-c++代码实现及运行实例结果
- C++ 判断质子数的基础代码
- VS2012 编译带有c/c++代码的python模块失败解决方案
- extern C的作用详解(通过它可以在c++中使用c代码)
- C++编译过的C代码为什么要用extern C
- 使用eclipse调试cocos2d-x C++ 代码(编写+真机调试)
- 详解C++代码反汇编后的堆栈寄存器EBP和ESP
- 《大话设计模式》读书笔记(C++代码实现) 第二章:策略模式