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 1133 0

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

admin 楼主

2020-3-4 21:04:15

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

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

x

' }" M6 r+ i  m: N. U; H7 O+ |[mw_shl_code=cpp,true]#include <string>4 H  c4 J1 ?' Y- G3 c3 x+ G- `* i
#include <io.h>
! ?+ M; n  U1 W; N#include <vector>( G$ N8 \. W+ c3 G% K
#include <iostream>
  m1 _: T! ^; U9 u" X) s- U! n#include <fstream>3 l6 n6 s& d+ A
using namespace std;7 F0 g" Q  M# I9 C* A% f

/ ~* B! @8 m( ~4 z9 v* D           o4 B0 z4 A! b5 z
/************************************************************************/" b! O& t/ ?9 ^% Z7 ]2 r
/*  获取文件夹下所有文件名
8 `% Y& A; J7 ]" h6 Y9 a    输入:     
7 _6 ^. G& Y3 e1 N6 i        path    :   文件夹路径1 Y9 ^- A9 I4 |, Y0 a' q1 y
        exd     :   所要获取的文件名后缀,如jpg、png等;如果希望获取所有9 P' i: G5 C: v/ f. X( i" o. a8 P
                    文件名, exd = ".jt"8 M7 m4 V- g0 F6 Q6 M  j/ l
    输出:
' P: h* a, B4 y3 {        files   :   获取的文件名列表 含有路径
$ m7 _) ?  a; B1 ~) ]*/
' |0 T. O8 x5 c6 h) l/************************************************************************/9 F6 ]7 W' {" k: Z4 i

' M8 U$ g4 ]! T- k. W3 |void CONFIG_getFiles( string path, string exd, vector<string>& files )
; F9 }( o# {' _9 a9 ?7 t{, c* h- r, a2 b* G8 x7 V
        //文件句柄
4 }. V( J- Z9 c    long   hFile   =   0;0 @1 A! f0 ?: }$ O$ n4 R
    //文件信息5 [0 Z: l; L! D- H# C8 d# o2 T' x1 _
    struct _finddata_t fileinfo;
/ B& U; V" B) z( ~' ^4 z% [    string pathName, exdName;
1 _, S# w6 G8 ?6 d
$ o; M+ y6 r: O2 e3 ?  c     string p;& H3 M2 \, b: p7 C! \0 q) U
        if((hFile = _findfirst(pathName.assign(path).append("\\*").c_str(),&fileinfo)) !=  -1)
( x: |$ M, }6 u7 \- X$ \* e    {$ ?6 |" R' q6 o4 o% D
        do
) v9 \  D4 c8 d8 U1 x( C        {
- X7 s( c' u$ T- G$ j+ v            //如果是文件夹中仍有文件夹,迭代之
7 S* K3 @, N0 z. C, g7 s" D            //如果不是,加入列表2 M( C! }, P" h8 Q3 B( M+ a5 V% S7 j
            // 不推荐使用,硬要使用的话,需要修改else 里面的语句
5 M' `  k0 [6 U  ~* G           if((fileinfo.attrib &  _A_SUBDIR))
# t% K0 F, L( Q* n( J  ^            {
- i8 ]5 d5 F  A                               
9 W. M! K/ Y2 [% F              if(strcmp(fileinfo.name,".") != 0  &&  strcmp(fileinfo.name,"..") != 0)8 \0 J1 j' c2 {' b. y; ?8 J2 W3 ~9 E
                           CONFIG_getFiles( pathName.assign(path).append("\\").append(fileinfo.name), exd, files );7 G* T: w7 B( w6 |. T$ t! |3 e

: W4 G1 V8 \$ u6 f9 S            }, l7 P5 R5 K6 o4 D
            else
6 C* \- G9 h# p  A8 z            {: p* p9 q. ?2 g4 P; a" T8 j
                                if (strstr(fileinfo.name,exd.c_str()))
' }3 Y* Q/ E/ M                                {3 a  g! P/ i0 P0 p: r9 u4 b. ^
                                         files.push_back(pathName.assign(path).append("\\").append(fileinfo.name)); // 要得到绝对目录使用该语句  M. ?! M- y2 [; O" c% ~2 Y
                                }
1 l6 i) J1 i& i$ Y5 a
- z8 d% [+ d* f' h6 T& a+ w                    //如果使用2 i  k" j% \3 x
                  //  files.push_back(fileinfo.name); // 只要得到文件名字使用该语句
: X! i. K" }) c' D' r0 T# v6 {            }
2 P( M5 k$ \$ S( M+ Z        }while(_findnext(hFile, &fileinfo)  == 0);
9 M/ f0 D8 f" |1 l. `& A        _findclose(hFile);& S+ O& q( l1 ~- \; g! I: x
    }6 l4 R/ l0 \% C. z2 g& O( h
}
+ T% w3 e3 Q5 F$ P' H. |3 g8 P[/mw_shl_code]
/ R" M$ D* Q& j6 l/ A% }) k* A
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了