当前位置: 技术问答>linux和unix
如何搜索一个目录下的文件?
来源: 互联网 发布时间:2015-02-21
本文导语: 如何搜索一个目录下的文件? 用readdir()可以读出一个目录下的文件。如: readdir(dirp); // 读出一个文件信息 readdir(dirp); // 读出下一个文件信息 这样可以从第一个文件,顺序地读到最后一个文件。我想问的是...
如何搜索一个目录下的文件?
用readdir()可以读出一个目录下的文件。如:
readdir(dirp); // 读出一个文件信息
readdir(dirp); // 读出下一个文件信息
这样可以从第一个文件,顺序地读到最后一个文件。我想问的是,当我要逆序地读出一个文件
时,有没有函数可以做到?例如我当前已读了六个文件,现在又想回过头来读第三个文件,要怎
么做?
是不是只能这么做:先把该目录下的文件全部读一遍,通过telldir()得到各文件的在目录中的偏
移量(类型为off_t),再用一个数组保存下来。然后再用seekdir()来定位?
感觉这样做很不智能。
有没有函数可以直接定位?就像读一个文件中数据那样,通过fseek()可以定位到一个绝对地址或
用readdir()可以读出一个目录下的文件。如:
readdir(dirp); // 读出一个文件信息
readdir(dirp); // 读出下一个文件信息
这样可以从第一个文件,顺序地读到最后一个文件。我想问的是,当我要逆序地读出一个文件
时,有没有函数可以做到?例如我当前已读了六个文件,现在又想回过头来读第三个文件,要怎
么做?
是不是只能这么做:先把该目录下的文件全部读一遍,通过telldir()得到各文件的在目录中的偏
移量(类型为off_t),再用一个数组保存下来。然后再用seekdir()来定位?
感觉这样做很不智能。
有没有函数可以直接定位?就像读一个文件中数据那样,通过fseek()可以定位到一个绝对地址或
|
好像没办法,只能一个一个的来