|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
9 |6 P7 v7 Y; l
[mw_shl_code=cpp,true]#include <string>% l( S: U5 V% k6 Y' b1 V
#include <io.h>
3 C+ a* [3 l' H1 f- |#include <vector>. `; ^( v7 Q& U9 \
#include <iostream>
- {( G! T( A) f$ p#include <fstream>8 ]% u! \: M/ |
using namespace std;2 e9 c! y, n4 l% t# Z) B' B% k& y
8 C9 E, V. f6 z( ^9 @; h
i _3 S$ N9 m9 `2 ]$ c9 p0 T
/************************************************************************/
( n4 X3 G* x8 O$ `" w/* 获取文件夹下所有文件名6 f0 D) |6 v+ w9 {
输入: 6 Y( T5 ~" {! n* \0 y
path : 文件夹路径6 w- D; L6 F* t, ~, Y8 X5 Q) a
exd : 所要获取的文件名后缀,如jpg、png等;如果希望获取所有
( B% {) J; e4 n: A$ z# H 文件名, exd = ".jt"+ O% K! `2 g. H4 Z6 l" p8 \
输出:+ t9 Y5 N& a1 I! Z
files : 获取的文件名列表 含有路径# m4 R# n8 T& o3 P3 }% C
*/
9 c# T6 ~3 f$ {2 Z! o, n4 f; ?1 q/************************************************************************/9 a+ A8 J, y3 Q+ `- e. ?- O$ o
- i U! V/ k: A2 r
void CONFIG_getFiles( string path, string exd, vector<string>& files )
8 F/ d( H# c- A" g4 F{, L$ \- e7 B6 M+ J2 ]/ j
//文件句柄7 N: K) S% c! s3 c6 i
long hFile = 0;
, o0 k6 r6 i4 M //文件信息0 Z% m- `/ c! C V$ c+ B
struct _finddata_t fileinfo;! \ _- x' o. \5 m- T A5 [2 f
string pathName, exdName;
' A9 P! |2 D3 v# }' } s! c# Z3 y, T/ M! J5 Z% y+ t
string p;* h$ H+ H" F/ e4 y# U* q3 G M9 j
if((hFile = _findfirst(pathName.assign(path).append("\\*").c_str(),&fileinfo)) != -1)
" N- K& K' A+ A$ T# ^4 V9 b& ^ {4 `# x% J5 v* @
do N) `0 n `0 G, [9 @3 q
{
9 r" z- w+ F1 b# e2 [6 p //如果是文件夹中仍有文件夹,迭代之5 j$ Y5 d/ H- k9 U
//如果不是,加入列表. \( M3 Z9 `% f- K% A! w, b' j6 c, o0 R
// 不推荐使用,硬要使用的话,需要修改else 里面的语句0 c. `5 P( {1 H6 ?+ g
if((fileinfo.attrib & _A_SUBDIR))
! A' p; X! i! d, K- _ {
" L" d i- y/ q9 P+ H3 x/ y
; k1 z V# M# @& e" P+ | if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"..") != 0)
2 O7 Q$ S# Z( I1 I j' U- C. d( s: G CONFIG_getFiles( pathName.assign(path).append("\\").append(fileinfo.name), exd, files );, Q' ?0 O* W9 C+ K
7 @& u4 n" j4 e6 F) z
}
& |; f( |6 G/ V3 E& J else , P8 m" p) f1 W7 w3 t$ G9 Q1 i8 D: X
{. B" r q1 _) @9 n& @
if (strstr(fileinfo.name,exd.c_str())): J/ p$ o6 z8 E( P7 _0 q$ n
{* e$ s p3 c+ d- o4 q
files.push_back(pathName.assign(path).append("\\").append(fileinfo.name)); // 要得到绝对目录使用该语句
( Y4 O8 u2 A5 M6 `# F4 O }
# p6 L4 Q: t& Z% q y# i- z- Z
7 `" H6 Q, L1 F1 W3 [3 q //如果使用) `2 _2 O" j$ X+ l
// files.push_back(fileinfo.name); // 只要得到文件名字使用该语句4 J- R |: K8 Q* Z$ N: ]6 f
}
( P% w3 `& ^+ L; G3 ^( O }while(_findnext(hFile, &fileinfo) == 0);% u% n6 P8 Q) l- H; ~
_findclose(hFile);
' _! K4 _3 B5 e9 n1 _( w }
7 u2 ~& N- R! b+ g3 N7 S: q8 }* k8 e}
0 Z6 }7 f0 X) O[/mw_shl_code]8 ^- z1 a7 Z5 @* u% }
|
|