<%@ Page Language="C#" Debug=true Trace=true%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="Microsoft.Web.UI.WebControls"%>
<%@ Register TagPrefix="ie" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls"%>
<script language="C#" runat="Server">
readonly string strCurrentDirectory = "I:\\MyAspNet";
void Page_Load()
{
//String strCurrentDirectory;
//strCurrentDirectory = Server.MapPath("../");
ListFiles(new DirectoryInfo(strCurrentDirectory));
}
//递归列出目录下的所有文件和子目录 public void ListFiles( FileSystemInfo fileinfo ) 

if( ! fileinfo.Exists ) return; 
DirectoryInfo dirinfo = fileinfo as DirectoryInfo; 
if( dirinfo == null ) return; //不是目录 
FileSystemInfo [] files = dirinfo.GetFileSystemInfos(); 
for( int i=0; i<files.Length; i++) //>遍历目录下所有文件、子目录 

FileInfo file = files[i] as FileInfo; 
if( file != null ) // 是文件 

Response.Write( file.Name + "&nbsp;&nbsp;" + file.Length + "<br>");

else //是目录 

Response.Write(files[i].FullName);
ListFiles( files[i] ); //对子目录进行递归调用 

}; 
}
</script>
<ie:TreeView id="root" runat="Server">
</ie:TreeView>

解决方案 »

  1.   

    我想用treeview列出i:myaspnet里面的所有目录及文件,但我现在实现不了
      

  2.   

    式式,
    winform中 treeview 是这么用的,webform中记不清了void Page_Load()
    {
    //String strCurrentDirectory;
    //strCurrentDirectory = Server.MapPath("../");
           MytreeView.Nodes.Clear();
    TreeNode theNode=new TreeNode();

    MytreeView.Nodes.Add(theNode); ListFiles(new DirectoryInfo(strCurrentDirectory,theNode);
    }
    //递归列出目录下的所有文件和子目录 public void ListFiles( FileSystemInfo fileinfo,theNode ) 

    if( ! fileinfo.Exists ) return; 
    DirectoryInfo dirinfo = fileinfo as DirectoryInfo; 
    if( dirinfo == null ){
                  theNode.Text=dirinfo.Name;
                  return; //不是目录 
                 }
    FileSystemInfo [] files = dirinfo.GetFileSystemInfos(); 
    TreeNode newNode=new TreeNode();
    theNode.Nodes.Add(newNode);
             for( int i=0; i<files.Length; i++) //>遍历目录下所有文件、子目录 
    {
                  ListFiles(files[i],newNode);
    }; 
    }