读桥埋困取的代码方式如下:
intmain()
{
longfile
struct_finddata_tfind
_chdir("d:\\")
if((file=_findfirst("*.*",&find))==-1L)
{
printf("空白!\n")
exit(0)
}
printf("%s\n",find.name)
while(_findnext(file,&find)==0)
{
printf("%s\n",find.name)
}
_findclose(file)
return0
}
用C语言读取目录中的文件名的方法:
1、如果是在window环境下,可以用一敏念下方法:
使用stdlib.h头文件声明的system()函数,调用液祥系统命令dir,把c:目录下文件列表写入文件dir.txt中
2、使用dirent.h头文件中声明的opendir(),readdir()函数;
3、如果没有dirent.h,可以使用io.h头文件中声明的_findfirst(),_findnext()函数:
#include <stdio.h>int main(){
FILE *fp
char filename[100] //文件名
char tempstr[1024] //读文件的缓冲 空歼
printf("请输入你要打开的文件名及路径,如斗滑冲c:\\temp.txt\n"让陆)
gets(filename) //这句要用户输入文件名
if ((fp=fopen(filename,"r"))==NULL){//打开文件,并判断是否有打开错误
printf("打开文件%s出现错误\n",filename)
return 0
}
//以下显示文件内容
while(fgets(tempstr,1024,fp)!=NULL) //读文件一行内容,最多1024字符到缓冲区,并判断是否文件已经结束
printf("%s",tempstr) //显示缓冲区内容
fclose(fp) //关闭文件
}
用dos命令就行啊,如果你真要用C,就把DOS命令嵌入C代码中吧,这个最简单首先加上头文件:
#include"stdlib.h"
#include"stdio.h"
int main(int argc,char *argv[])
{char inpu[128]="dir "int i
system("graftabl 936")
system("echo on")
system("cls")
for(i=4i<128i++)
{inpu[i]=argv[1][i-4]
if(inpu[i]=='激差薯\0') break
}
system(inpu)
system("pause")
/*到这里就把DOS命令DIR嵌入到C语言中了,另外还能加入一庆锋些DOS开关,能使输出结果不同具体见cmd 下的help dir*/
}
输出结果和输入DIR一样:
驱动器 C 中的卷没有标签。
卷的序列号是 4C02-5551
c:\WINDOWS 的目录
2007-08-23 18:32<DIR> .
2007-08-23 18:32<DIR> ..
2006-12-07 20:48 0 0.log
2006-11-16 20:43<DIR> addins
2006-06-23 17:07 176,128 amcap.exe
2006-11-16 20:43<DIR> AppPatch
2004-06-06 14:1382,944 clock.avi
2006-11-16 20:51 200 cmsetacl.log
2007-08-23 17:45 350,057 comsetup.log
2006-11-16 20:43<DIR> Config
2006-11-16 20:43<DIR> Connection Wizard
2006-11-16 20:55 0 control.ini
2006-11-16 20:43<DIR> Cursors
2006-11-16 20:43<DIR> Debug
2004-06-06 14:14 2 desktop.ini
2006-12-07 20:40 794 DirectX.log
2006-11-16 20:43<DIR>明者 Driver Cache
2007-08-23 16:20 641 DtcInstall.log
2006-11-16 20:43<DIR> ehome
2004-08-04 08:52 976,896 explorer.exe
...................
另外,站长团上有产品团购,便宜有保证
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)