A. C语言怎么读取某一文件夹下的所有文件夹和文件
读取的代码方式如下:
intmain()
{
longfile;
struct_finddata_tfind;
_chdir("d:\");
if((file=_findfirst("*.*",&find))==-1L)
{
printf("空白! ");
exit(0);
}
printf("%s ",find.name);
while(_findnext(file,&find)==0)
{
printf("%s ",find.name);
}
_findclose(file);
return0;
}
B. 如何用C/C++语言实现执行一个程序和打开一个文件夹
//
这是我以前写的一个,你参考参考
要用到windows
api
函数
#include
#include
#include
#define
len
1024
//
深度优先递归遍历目录中所有的文件
bool
directorylist(lpcstr
path)
{
win32_find_data
finddata;
handle
herror;
int
filecount
=
0;
char
filepathname[len];
//
构造路径
char
fullpathname[len];
strcpy(filepathname,
path);
strcat(filepathname,
"\\*.*");
herror
=
findfirstfile(filepathname,
&finddata);
if
(herror
==
invalid_handle_value)
{
printf("搜索失败!");
return
0;
}
while
(::findnextfile(herror,
&finddata))
{
//
过虑.和..
if
(strcmp(finddata.cfilename,
".")
==
0
||
strcmp(finddata.cfilename,
"..")
==
0
)
{
continue;
}
//
构造完整路径
wsprintf(fullpathname,
"%s\\%s",
path,finddata.cfilename);
filecount++;
//
输出本级的文件
printf("\n%d
%s
",
filecount,
fullpathname);
if
(finddata.dwfileattributes
&
file_attribute_directory)
{
printf("
");
directorylist(fullpathname);
}
}
return
0;
}
void
main()
{
directorylist("g:");
}