博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[代码分享] wxWidgets - wxDir 遍历文件
阅读量:6810 次
发布时间:2019-06-26

本文共 2537 字,大约阅读时间需要 8 分钟。

wxWidgets - wxDir 遍历文件

 

一、遍历单个目录下的文件 - 不进入子目录

 

1     #include 
2 #include "wx/filefn.h" 3 #include "wx/dir.h" 4 5 int main() 6 { 7 wxDir dir( wxGetCwd() ); //为枚举打开当前目录 8 9 if ( !dir.IsOpened() ) //检测是否成功打开10 return 0;11 12 puts("枚举当前目录下的文件:");13 14 wxString filename;15 16 bool cont = dir.GetFirst( &filename );17 while ( cont )18 {19 printf("%s\n", filename.c_str());20 cont = dir.GetNext(&filename);21 }22 23 return 0;24 }

 

 

    
二、遍历指定目录下所有文件 - 进入子目录

 

#include 
#include "wx/filefn.h" #include "wx/dir.h" int main() { wxDir dir( _T("D:\\Project\\wxWidgets\\wxDocToZh") ); if ( !dir.IsOpened() ) return 0; wxArrayString files; dir.GetAllFiles( _T("D:\\Project\\wxWidgets\\wxDocToZh"), &files ); //获取 D:\\Project\\wxWidgets\\wxDocToZh 下所有文件的完整路径到 files unsigned int i = 0; for( i; i < files.GetCount(); i++ ) puts( files[i] ); return 0; }

 

 

 

 

三、通过 wxDir::Traverse 实现遍历目录下所有文件 - 进入子目录

1 #include 
2 #include "wx/filefn.h" 3 #include "wx/dir.h" 4 5 class wxDirTraverserSimple : public wxDirTraverser //继承wxDirTraverser类 6 { 7 public: 8 wxDirTraverserSimple(wxArrayString& files) : m_files(files) { } 9 10 virtual wxDirTraverseResult OnFile(const wxString& filename)11 {12 m_files.Add(filename);13 return wxDIR_CONTINUE;14 }15 16 virtual wxDirTraverseResult OnDir(const wxString& WXUNUSED(dirname))17 {18 return wxDIR_CONTINUE;19 }20 21 private:22 wxArrayString& m_files;23 };24 25 26 int main()27 {28 wxDir dir( _T("D:\\Project\\wxWidgets\\wxDocToZh") ); //为枚举打开当前目录29 30 if ( !dir.IsOpened() ) //检测是否成功打开31 return 0;32 33 wxArrayString files;34 wxDirTraverserSimple traverser(files);35 36 dir.Traverse(traverser);37 38 unsigned int i = 0;39 for(i; i < files.GetCount(); i++)40 puts( files[i] );41 42 return 0;43 }

 

 

    
四、其他操作

wxDir::wxDir    wxDir::~wxDir    wxDir::Exists              //检测目录是否存在    wxDir::GetAllFiles    wxDir::FindFirst    wxDir::GetFirst    wxDir::GetName    wxDir::GetNext    wxDir::GetTotalSize        //获取目录大小    wxDir::HasFiles            //目录是否存在文件    wxDir::HasSubDirs         //是否存在子目录    wxDir::IsOpened    wxDir::Open    wxDir::Traverse

    参见手册 wxWidgets - wxDir:
        笔者译:
        官方原文:
        
        

 

--------------------

wid, 2012.03.01

 

转载地址:http://riwzl.baihongyu.com/

你可能感兴趣的文章
ionic3 UI Components学习4:Button 按钮
查看>>
highcharts实现饼状图
查看>>
npm常用命令集合
查看>>
6. Java 中的基本数据类型 【连载 6】
查看>>
three.js简介 —— 3D框架
查看>>
MySQL - 索引详解
查看>>
比特币:交易的数据结构
查看>>
es5_Object
查看>>
JS中的this详解
查看>>
基于vue-electron的小项目
查看>>
【收藏】15个常用的javaScript正则表达式
查看>>
大数据可视化 - 收藏集 - 掘金
查看>>
尤大低仿博客带回家
查看>>
库,组件,框架 - 收藏集 - 掘金
查看>>
vue server render实践
查看>>
JavaScript正则表达
查看>>
我对JS集合的简单学习
查看>>
CNN系列(转)
查看>>
Amaze UI 3.0即将内测,全新设计,全新体验,等你尝鲜!!
查看>>
Watson使用指南
查看>>