天天看点

使用递归遍历文件夹

using System;

using System.Data;

using System.Configuration;

using System.Collections;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.IO;

public partial class folder : System.Web.UI.Page

{

    private void Page_Load(object sender, System.EventArgs e)

    {

        //在此处放置用户代码以初始化页面  

        DirectoryInfo d = new DirectoryInfo(Server.MapPath("."));

        TreeNode node = new TreeNode();

        node.Text = d.Name;

        FileList(node, d);

        this.TreeView1.Nodes.Add(node);

    }

    private void FileList(TreeNode node, DirectoryInfo d)

    {

        //获取目录中所有文件  

        foreach (FileInfo f in d.GetFiles())

        {

            TreeNode node1 = new TreeNode();

            node1.Text = f.Name;

            node.ChildNodes.Add(node1);

        }

        //获取所有文件夹  

        foreach (DirectoryInfo di in d.GetDirectories())

        {

            TreeNode node2 = new TreeNode();

            node2.Text = di.Name;

            node.ChildNodes.Add(node2);

            //使用递归,循环下层目录  

            FileList(node2, di);

        }

    }

}

继续阅读