|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
' Q' t, M' p- x0 n, j8 D5 _) M[mw_shl_code=cpp,true]#include <string>
3 V5 z, A7 @/ f% b! D' W#include <io.h>
$ n* Z# q4 x4 }* h+ ^#include <vector>
8 r/ b, Y3 H# ]# H: {7 ^#include <iostream>& x' w0 {+ ^/ ~
#include <fstream>
& q+ A* r* J& Q, L$ eusing namespace std;. m, f* p5 H+ N Q( x d; F( X
8 ^: z! b; ]) X+ K& R
4 s" S. s7 \6 s& i% d* t/************************************************************************/. |7 R0 _, E V0 S8 r9 J1 D" ^
/* 获取文件夹下所有文件名
% Q9 ^, ], \8 @. l9 ^6 i. a# M 输入: ) N' N! g* r. t5 s" ]& x% R
path : 文件夹路径
8 q$ F# W! R/ X8 ?( L: w) j exd : 所要获取的文件名后缀,如jpg、png等;如果希望获取所有
) R: {% M7 x1 A' j- \! s1 v 文件名, exd = ".jt"
/ q* y5 l$ n8 L+ r 输出:
5 g8 k1 ?8 y, Y9 }: Y: F files : 获取的文件名列表 含有路径
: Z) Q8 [) h) t ^7 ]% A) y) L*/
. T1 Q+ e# \/ L- I( {2 I; r1 Y/************************************************************************/' V8 w0 Q1 d; t s d
4 \; C( g5 ^% Z% z. C
void CONFIG_getFiles( string path, string exd, vector<string>& files )" ~8 q% X T$ T o
{6 j1 q# ?" d! X
//文件句柄
9 }% {8 [) k+ l9 z1 G long hFile = 0;
" k0 f1 p! `+ ~3 d* x' `" l, f7 E //文件信息5 D: ^* q& V% O& A) R( m8 e5 s2 e
struct _finddata_t fileinfo;; I7 C8 Q4 @, Y. b! D4 a$ D$ W
string pathName, exdName;" a+ J9 f! q- b9 n* g4 [
6 F8 u! I. X2 T
string p;
$ ^/ `; I- D% v4 V( ^ if((hFile = _findfirst(pathName.assign(path).append("\\*").c_str(),&fileinfo)) != -1)
8 v; v) s+ a# E& v {) _7 j+ K0 ?! F+ t+ P/ C7 L
do
) _2 p$ Q( r& k' L& l- x [ {& G8 a& C$ B0 L* {# ?
//如果是文件夹中仍有文件夹,迭代之% t: v! J8 ~# g+ L" e* K: k$ w
//如果不是,加入列表
6 h7 y! G) C+ R/ _" j- L // 不推荐使用,硬要使用的话,需要修改else 里面的语句
1 A \" X, r) z3 G$ `* {8 U. v/ t9 i: F if((fileinfo.attrib & _A_SUBDIR))
, ~& I* Q8 Q/ q. {% w& `9 D, X {
8 A: O' }7 W3 m, x7 ^! b. s+ T5 V5 _7 T
4 m& p s4 K7 `* L6 j. [. B! D if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"..") != 0)3 i. ]7 \! w, c! D A
CONFIG_getFiles( pathName.assign(path).append("\\").append(fileinfo.name), exd, files );1 C# Q' @' }* _6 ~; x, {4 m4 E
3 d* c5 u7 l: ?2 [9 p2 A, q- Z }# Z9 b: g* R% V) M- }8 k
else
- d9 Y g9 Q E0 f b$ Z( S {
3 [+ p& ^6 {7 T2 W8 A" D if (strstr(fileinfo.name,exd.c_str()))
* }* k! q2 u8 {+ \6 o {
' c8 u" f/ ~" H$ H$ Y files.push_back(pathName.assign(path).append("\\").append(fileinfo.name)); // 要得到绝对目录使用该语句
" d1 X3 y. D o; ~ }
x. d( `3 w& U( h( V
8 H: ]! l7 i2 N4 f9 f- s //如果使用
. g4 T" R( J$ [6 ] // files.push_back(fileinfo.name); // 只要得到文件名字使用该语句( T# {9 m' ?5 u' r
}2 M s5 r$ e* t! S- O! x5 L( b
}while(_findnext(hFile, &fileinfo) == 0);( N& S+ H+ R9 ~5 R+ _: Q
_findclose(hFile);
. l' Z! @( k0 r# j1 Z }$ @ ~% L% y$ g- j8 d. E
}
: E# F7 y3 U/ Y6 _& T- |[/mw_shl_code]
6 w% Z7 w0 M& W |
|