C语言readdir和opendir

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言readdir和opendir相关的知识,希望对你有一定的参考价值。

while ((directp=readdir(m_dirp)) != NULL)//读去目录下的文件还是读取目录?
if ((m_dirp = opendir(m_srcDirName)) == NULL)//打开目标文件目录
这两个 有什么区别?

参考技术A readdir和opendir都是目录流操作,挨个读取或者打开目中的文件知道不为空或者如果为空,也就是第一个没读完就继续循环,第二个如果打开完了就执行if条件句里边的

readdir() opendir() 函数

<?php
$dir = "/images/";

// 打开目录,然后读取其内容
if (is_dir($dir)){
  if ($dh = opendir($dir)){
    while (($file = readdir($dh)) !== false){
      echo "filename:" . $file . "<br>";
    }
    closedir($dh);
  }
}
?>

运行结果是

filename: cat.gif
filename: dog.gif
filename: horse.gif

 

opendir() 函数

打开一个目录,读取它的内容,然后关闭:

定义和用法

opendir() 函数打开目录句柄。

参数描述
path 必需。规定要打开的目录路径。
context 可选。规定目录句柄的环境。context 是可修改目录流的行为的一套选项。

技术细节

返回值:

成功则返回目录句柄资源。失败则返回 FALSE。

如果路径不是合法目录,或者由于许可限制或文件系统错误导致的目录不能打开,则抛出 E_WARNING 级别的错误。

您可以通过在函数名称前添加 ‘@‘ 来隐藏 opendir() 的错误输出。

PHP 版本: 4.0+
PHP 更新日志: PHP 5.0:path 参数现在支持 ftp:// URL 封装协议。

 

readdir() 函数

定义和用法

readdir() 函数返回目录中下一个文件的文件名。

readdir(dir_handle);
参数描述
dir_handle

可选。指定之前由 opendir() 打开的目录句柄资源。

如果该参数未指定,则使用最后一个由 opendir() 打开的链接。

技术细节

返回值: 若成功则返回条目名称(文件名),失败则返回 FALSE。
PHP 版本: 4.0+

 

 

以上是关于C语言readdir和opendir的主要内容,如果未能解决你的问题,请参考以下文章

Linux c —— opendir函数和readdir函数内涵及用法(转)

怎样把c语言程序和文件存入同一目录中?

Linux编程--readdir

opendir函数和readdir函数内涵及用法

怎样使用C语言列出某个目录下的文件?

c语言中如何截取文件的后缀?