LINUX下C语言实现文件名检索

LINUX下C语言实现文件名检索,第1张

首先

DIR

*opendir(const

char

*filename)

struct

dirent

*readdir(DIR

*dirp)

利用这两个函数获取你目录下

while(

(psDirent=readdir(pdir))

!=

NULL

)

{

//readdir返回的是目录下的名称,然后判断一下当前这个名字是子目录还是文件

struct

stat

st

stat(

pcFileName,

&st

)

if(

S_ISDIR(st.st_mode)

)

continue;//是目录继续循环

else

filecount++;//是文件就加1

}

从循环出来后创建文件名为file(filecount+1)的文件。

这个只是简单思路。最后别忘closedir。因为你的需求里,并未涉及文件创建个数的上限以及如果删掉某个文件后的需求。

通常,如果你目录下文件个数固定似乎更好办一些。

我是写C的,懂一点linux。

C语言里面有readdir库函数,可以读文件,然后会保存在d_name结构体里,直接用就行。

Java的话,通过ls >文件的命令,把文件列表存文件里再读取,是不是一个好办法?


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9013053.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存