/**
* 遍历文件夹和文件列
* @author lizhiming
* @date 2016/06/30
*/
define('DS', DIRECTORY_SEPARATOR);
class File
{
//返回数组
private $DirArray = array();
private $FileArray = array();
private $DirFileArray = array();
private $Handle, $Dir, $File;
//获取目录列表
public static function getDir(& $Dir)
{
if (is_dir($Dir)) {
if (false != ($Handle = opendir($Dir))) {
while (false != ($File = readdir($Handle))) {
if ($File != '.' && $File != '..' && !strpos($File, '.') && is_dir($File)) {
$DirArray[] = $File;
}
}
closedir($Handle);
}
} else {
$DirArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $DirArray;
}
//获取文件列表
public static function getFile(& $Dir)
{
if (is_dir($Dir)) {
if (false != ($Handle = opendir($Dir))) {
while (false != ($File = readdir($Handle))) {
if (($File != '.' && $File != '..' && strpos($File, '.')) || is_file($File)) {
$FileArray[] = $File;
}
}
closedir($Handle);
}
} else {
$FileArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $FileArray;
}
//获取目录/文件列表
public static function getDirFile(& $Dir)
{
if (is_dir($Dir)) {
$DirFileArray['DirList'] = self::getDir($Dir);
if ($DirFileArray) {
foreach ($DirFileArray['DirList'] as $Handle) {
$File = $Dir . DS . $Handle;
$DirFileArray['FileList'][$Handle] = self::getFile($File);
}
}
} else {
$DirFileArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $DirFileArray;
}
}
VC/MFC 下 递归遍历目录下的所有子目录及文件
在MFC下要实现文件夹的递归遍历,可用CFileFind类,依次读取文件夹下的子文件夹和文件,并判断通过判断是文件夹还是文件来决定递归遍历.递归遍历代码如下: /******************* ...
.Net 遍历目录下第一层的子文件夹和子文件夹里的文件
今天再完成一道任务的时候需要遍历得到所有txt文件,搜索很久终于得到了一个很方便的方法. foreach (string o in Directory.GetDirectories(@"D: ...
IO流-递归遍历目录下指定后缀名结尾的文件名称
/* *自定义遍历目录下指定后缀名结尾文件的名称的方法: * * param file:指定目录 name:指定后缀名 */ 1 public static void FileName(File fi ...
php源码之遍历目录下的所有的文件
Python遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例
遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例: #-*- encoding: utf-8 -*- __author__ = 'liudong' import linecache,sys ...
(实用篇)PHP不用递归遍历目录下所有文件的代码
使用 NIO.2 遍历目录下所有的Java文件
package wellGrounded; import java.io.IOException; import java.nio.file.FileVisitResult; import java. ...
php遍历目录下文件,并读取内容
<?php echo "
遍历目录下文件,并读取内容
\n"; function listDir($dir) { i ...
C/C++遍历目录下的所有文件(Windows/Linux篇,超详细)
本文可转载,转载请注明出处:http://www.cnblogs.com/collectionne/p/6815924.html. 前面的一篇文章我们讲了用Windows API遍历一个目录下的所有文 ...
C/C++遍历目录下的所有文件(Windows篇,超详细)
注: 1. 本文讨论的是怎么用Windows API遍历目录下的所有文件.除Windows API,还有一种Windows/Linux通用的方式,使用. 2. 本文部分翻译自M ...
随机推荐
Sender
多个对象用同一个方法的时候,想对多个对象分别操作的话就用Sender. BackGroundWorker worker1 = sender as BackGroundWork. 分别去取当前的对象 ...
练习一_使用Git进行代码管理的心得
2015年9月19日,第一次软工实践课.助教给我们介绍了git,GitHub.显而易见,我并没有听懂.所以整个上午都在找教程,一个字一个字对着敲,然后敲着敲着就出错,回宿舍,继续敲,也是一样的... ...
Windows自带Android模拟器启动失败
Windows自带Android模拟器启动失败 错误信息:[Critical] XDE Exit Code: InvalidArguments (3)XDE执行的第三个参数为设置内存值,形式为/mem ...
Educational Codeforces Round 11
A. Co-prime Array http://codeforces.com/contest/660/problem/A 题意:给出一段序列,插进一些数,使新的数列两两成互质数,求插最少的个数,并输 ...
IOS面试攻略
IOS面试攻略(1.0) 2013-10-13 20:58:09| 分类: IOS面试 | 标签:ios知识点总汇 ios面试 |举报|字号 订阅 来自:伊甸网 @ 看到这个关键字,我 ...
cron 编辑器修改
更改 cron 默认编辑工具 Debian 的 crontab 默认的编辑器是 nano,用起来很不习惯,怎么才能转回 VI 呢? 用如下命令即可: #update-alternatives --co ...
OVF文件考究
一.什么是OVF文件 开源虚拟化格式OVF(不同于小写的ovf)文件是一种开源的文件规范,它描述了一个开源.安全.有效.可拓展的便携式虚拟打包以及软件分布格式,它一般有几个部分组成,分别是o ...
jenkins 邮件配置 二 ***
Jenkins 有两种邮件通知方式: 1.Jenkins自带的“E-mail Notification” 2.插件:Extended E-mail Notification,是可编辑的邮件配置方式. ...
backup &; restore On Ubuntu
详见:https://help.ubuntu.com/community/BackupYourSystem/TAR 在 使用Ubuntu之前,相信很多人都有过使用Windows系统的经历.如果你备份过 ...
安卓手机文件管理器简单横向评比 - imsoft.cnblogs
X-plore文件管理器 个人评价:安卓手机上管理文件的神器,所有文件一览无余,加上自己对软件常用功能的配置,管理文件无比方便.(本人一直使用) Solid文件管理器 个人评价:用户体验真的很 ...