PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

[二次开发源码] 获取一个文件夹下所有指定类型的文件名

[复制链接]

2020-3-4 21:04:15 1182 0

admin 发表于 2020-3-4 21:04:15 |阅读模式

admin 楼主

2020-3-4 21:04:15

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
% [, K$ [& V4 ^
[mw_shl_code=cpp,true]#include <string>
$ U& ]" M& L$ x( H3 r#include <io.h>; I) @" D& w; b# c5 E
#include <vector>
7 f) E0 g1 O: F$ b$ _2 p$ x0 F. m$ Q" y) V#include <iostream>4 _1 A: g! F: ^( }5 f
#include <fstream>* j1 _9 n6 @8 J: }9 _9 F
using namespace std;
1 r/ u0 j4 V% k8 ]
* g+ B8 w+ V. b4 L- h/ s         
* o5 f- c3 X( y/************************************************************************/
2 y. Q0 X9 Y: y/ \* d/*  获取文件夹下所有文件名: k, p( M1 _. F: {  F9 O6 B
    输入:     ! c% ^) m# A& p5 H( r7 \' z0 b
        path    :   文件夹路径
: c: x0 `& ^# U. |& p8 \        exd     :   所要获取的文件名后缀,如jpg、png等;如果希望获取所有2 F$ N' M- ~' u5 M9 @) u4 o
                    文件名, exd = ".jt"% _% V" G1 r9 c2 ^7 Y/ ]3 V
    输出:
) N$ N6 z1 n: m9 I) }2 g- j        files   :   获取的文件名列表 含有路径9 L6 R1 }  [" h" ?2 N. c  c1 k
*/
% S* s" W5 g- e' i  e3 @# q/************************************************************************/
7 v. ]$ N) A' B7 Q% U3 B, c2 e% |8 l! _' X" }' ]' u
void CONFIG_getFiles( string path, string exd, vector<string>& files )+ ?) Z9 \% z0 i/ `/ `
{% I$ O; x* N  r. G9 |8 u4 |
        //文件句柄
( \. T% m# k& V$ A    long   hFile   =   0;
. v: T0 U! ]8 \: n* ^    //文件信息# @  X2 x( _- Z
    struct _finddata_t fileinfo;
& u$ A/ ^( u6 B- c, C    string pathName, exdName;( V; z; \+ F8 v

0 a1 s& s/ I, n* ~- H9 S     string p;: q; b6 f2 Y8 M' f9 i; g9 x
        if((hFile = _findfirst(pathName.assign(path).append("\\*").c_str(),&fileinfo)) !=  -1)+ V! D& \% }" C& Q% }& a. {9 `
    {
0 s- |1 s8 I# S( p        do
+ |: |( E0 i0 t4 z4 [# \& I7 L) |        {9 t! l) u" Q" C
            //如果是文件夹中仍有文件夹,迭代之7 U% e4 E% Z, U( U5 a
            //如果不是,加入列表
! V: L2 f1 o0 M; f2 s' S            // 不推荐使用,硬要使用的话,需要修改else 里面的语句
0 `8 L3 D! d4 E% Q( b           if((fileinfo.attrib &  _A_SUBDIR))* P5 ^5 [- _7 [3 c, i
            {+ U# f6 z; n5 j0 O; c
                                ' `3 }. @: ]& f3 p/ ?8 u- r' m
              if(strcmp(fileinfo.name,".") != 0  &&  strcmp(fileinfo.name,"..") != 0)
" t0 k. w: q8 ?4 X! S6 B# E                           CONFIG_getFiles( pathName.assign(path).append("\\").append(fileinfo.name), exd, files );5 ^/ t4 r0 R+ V# v) `* u, K

3 K9 h  n( T/ U. z% T            }
2 w! g4 ?5 I* G8 Z) N            else / A5 [% ~/ b$ B7 h( l
            {% K: G) q( K% ?' N, ~- ?
                                if (strstr(fileinfo.name,exd.c_str()))+ }7 O  e" b  B: S# m
                                {  q7 w0 y- G3 r4 `" O4 E, ^
                                         files.push_back(pathName.assign(path).append("\\").append(fileinfo.name)); // 要得到绝对目录使用该语句
' i7 Y2 F, w5 {2 A+ l( s                                }9 ^. _5 X" h7 U: @8 O% w) K* i4 G
' e; e! h: T/ p0 h+ l: o
                    //如果使用
$ A  Q0 N7 q5 ]- H4 o2 w! x                  //  files.push_back(fileinfo.name); // 只要得到文件名字使用该语句
9 G; Q7 Q% _. e: K/ f2 ]+ u) l            }
2 \3 s# u- j4 o' L( s9 }        }while(_findnext(hFile, &fileinfo)  == 0);
" F$ \' D: X% b1 P" i        _findclose(hFile);
" c1 |6 p. W7 J9 B; ^/ }4 f) G    }
0 k. J$ Y+ N, \, \( y" _, D) z+ N}0 n3 E* m) `2 V  \
[/mw_shl_code]
/ j1 q/ ?! n& ^6 z! ]
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了