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 >文件的命令,把文件列表存文件里再读取,是不是一个好办法?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)