|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
J- L0 T U4 a& D" M+ Y, m0 p2 u[mw_shl_code=cpp,true]#include <string>! R! v# e) V7 i4 D
#include <io.h>
9 E" b# F, t3 ?/ S3 J#include <vector>
" g# w: n6 h& d: e8 D, _#include <iostream>3 W& Z3 V( P. }7 i
#include <fstream>
/ [: w) o/ w/ Q, Y1 I+ {using namespace std;
3 N* \4 h: S. h: L3 K
$ Q5 j& c9 D4 D1 _$ j " j3 e- Z2 | U
/************************************************************************/
- u# }1 C9 Z$ Y/* 获取文件夹下所有文件名: S# D* e$ W; M
输入: 0 K P/ s- b7 r$ ^0 F0 f" k
path : 文件夹路径0 |" X, Q- d4 @( L
exd : 所要获取的文件名后缀,如jpg、png等;如果希望获取所有& ~) p% y) \& Y- v: N' U
文件名, exd = ".jt"
; T- @' U, A9 ^ 输出:
1 X) _7 |3 q! e* _3 h- q5 R- C$ t files : 获取的文件名列表 含有路径7 N; t4 X6 h2 D1 P( v
*/
) v& g4 o+ y; v2 ?4 q2 c; A& G( B/************************************************************************/
' ]6 w: W/ ~5 g; H
) n' \ a! }9 o. m# ivoid CONFIG_getFiles( string path, string exd, vector<string>& files )+ `9 I" M3 e' V4 E O" j
{1 v- p" T; {' }$ i+ N/ q
//文件句柄; m) C/ K/ F0 K# j$ q
long hFile = 0;
4 b, D& X8 q$ d //文件信息" G1 s7 \5 m2 V
struct _finddata_t fileinfo;
2 K- h( I2 [+ K. A2 M$ M$ | string pathName, exdName;- \4 C. E$ [0 o! ~. h7 n' l7 \' {* p
$ F( H, ?3 s4 P string p;1 \- w& }; D8 v5 G2 [4 E% H
if((hFile = _findfirst(pathName.assign(path).append("\\*").c_str(),&fileinfo)) != -1)& l0 G3 a' p, ?
{
7 J- r3 B1 g G2 s5 c( Y$ W do: P4 O) |3 j' t+ N# [$ `
{
7 f+ c$ Z7 p) ? //如果是文件夹中仍有文件夹,迭代之
# d5 H& H$ c" b! Z+ u! `* Q9 P //如果不是,加入列表# M2 Y; Q1 H. d9 Q; ]4 ^0 a
// 不推荐使用,硬要使用的话,需要修改else 里面的语句
5 y- n) j" J0 a) y if((fileinfo.attrib & _A_SUBDIR))# @' F" Z% P' [% p
{+ s6 o- v: @5 ~" Z; J( d& w; v% Y
9 I/ f# n5 i# [9 M, V: ?* u if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"..") != 0)4 I: ?. W6 T1 l, i
CONFIG_getFiles( pathName.assign(path).append("\\").append(fileinfo.name), exd, files );
2 K) v) W4 N8 n: U0 a/ T* A% O5 F6 l/ g7 F1 ^8 D
}8 Q" D; r& q1 A- N
else ) J& @6 `' l5 B5 S) `3 T5 {! w
{
2 S3 P! |0 j7 i' |! r' m* _ if (strstr(fileinfo.name,exd.c_str()))- l* e) a* L! ?! |. e, W: O
{
, Y; }- [$ A% P" k files.push_back(pathName.assign(path).append("\\").append(fileinfo.name)); // 要得到绝对目录使用该语句! S, v( M' w1 ~1 {3 ^1 u/ M$ |
}- W: u8 T4 E2 t; z0 n+ H
1 S5 Y2 _+ r6 S2 Q! Y. L
//如果使用* J1 ?6 h1 k/ U: M$ g1 e4 R- ]
// files.push_back(fileinfo.name); // 只要得到文件名字使用该语句" f1 Y" X& S+ Z6 f$ ~
}
/ A$ ~; ] d3 f) \2 X+ q }while(_findnext(hFile, &fileinfo) == 0);
! c5 f8 l4 q1 J _findclose(hFile);
/ V/ k, A0 T% o: j }: Q* z9 l& A2 Y# J5 C
}! G0 Q. c$ Z3 G
[/mw_shl_code]$ k' T0 T, n& x/ Z8 e+ r
|
|