文件目录树函数(递归)

$path是目录名,$level是层级数,用来缩进不同层级
function dirtree($path,$level=0){
	$dir=opendir($path);
	  while(($filename=readdir($dir))!==false){
			if($filename=='.'||$filename=='..'){
			  continue;
			}
			if(is_dir($path.$filename)){
			  echo str_repeat(' ',$level),$filename.'<br>';
			  dirtree($path.$filename.'/',$level+1);
			}else{
			  echo str_repeat(' ',$level),$filename.'<br>';
			}
	  }
	  closedir($dir);
}

在C#中,可以使用`TreeView`控件来显示文件目录,这通常涉及到递归遍历文件系统,并将目录和文件显示为节点。以下是一个简单的示例来展示如何实现这个功能: 首先,你需要在Windows窗体应用程序中添加一个`TreeView`控件。然后,你可以使用`System.IO`命名空间中的`Directory`类来获取目录信息,并使用递归函数来遍历目录结构。 以下是一个简单的示例代码,演示如何使用`TreeView`控件来显示文件目录: ```csharp using System; using System.IO; using System.Windows.Forms; namespace TreeViewExample { public partial class MainForm : Form { private TreeNodeCollection treeNodes; public MainForm() { InitializeComponent(); treeNodes = treeView.Nodes; AddNode("C:\\"); // 你可以根据需要更改路径 } private void AddNode(string path) { // 获取路径下的所有目录 DirectoryInfo dirInfo = new DirectoryInfo(path); TreeNode rootNode = new TreeNode(dirInfo.Name); foreach (DirectoryInfo directory in dirInfo.GetDirectories()) { // 递归添加子目录 AddNode(directory.FullName); } foreach (FileInfo file in dirInfo.GetFiles()) { // 添加文件节点 rootNode.Nodes.Add(file.Name); } treeNodes.Add(rootNode); } } } ``` 在上述代码中,`AddNode`方法用于递归遍历目录,并为每个目录和文件创建相应的`TreeNode`,然后将其添加到`TreeView`控件中。这个方法从指定的路径开始,遍历所有子目录,并将文件作为叶节点添加到中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值