给个例子,谢谢!

解决方案 »

  1.   

    我的函数库集:Public Shared Sub GetFolderFiles(ByVal sPath As String, ByVal sFileSpec As String, ByRef sFiles() As String, ByRef nFiles As Long, Optional ByVal blnHaveSubDir As Boolean = True)
                Dim i As Integer
                Dim sDir As String
                Dim sSubDirs() As String '存放子目录名称
                Dim nIndex As Long
                If Right(sPath, 1) <> "\" Then sPath = sPath & "\"
                sDir = Dir(sPath & sFileSpec)
                '获得当前目录下文件名和数目
                Do While Len(sDir)
                    ReDim Preserve sFiles(nFiles)
                    sFiles(nFiles) = sPath & sDir
                    nFiles = nFiles + 1                sDir = Dir()
                Loop
                '不包括子目录
                If blnHaveSubDir = False Then Exit Sub
                '获得当前目录下的子目录名称
                nIndex = 0
                sDir = Dir(sPath & "*.*", 16)
                Do While Len(sDir)
                    If Left(sDir, 1) <> "." Then 'skip.and..
                        '找出子目录名
                        If GetAttr(sPath & sDir) And vbDirectory Then
                            '保存子目录名
                            ReDim Preserve sSubDirs(nIndex)
                            sSubDirs(nIndex) = sPath & sDir & "\"                        nIndex = nIndex + 1
                        End If
                    End If
                    sDir = Dir()
                Loop
                For i = 1 To nIndex
                    '查找每一个子目录下文件,这里利用了递归
                    Call GetFolderFiles(sSubDirs(i), sFileSpec, sFiles, nFiles)
                Next i
            End Sub
      

  2.   

    string[] files = Directory.GetFiles( "目录" , "*.*" );
      

  3.   

    string[] arrZipFile;
    arrZipFile = Directory.GetFiles(FileSourcePath.Text,"*.zip");
    if(arrZipFile.Length < 1)
    {
    MessageBox.Show("选择路径中ZIP压缩文件不存在,\r\n请重新选择 ZIP数据路径 ","提示");
    return;
    }

    for (int i=0;i<arrZipFile.Length;i++)
    {
    MessageBox.Show(arrZipFile[i].ToString());
    }
      

  4.   

    System.IO.Directory类和System.IO.DirectoryInfo类
      

  5.   

    string[] files = Directory.GetFiles( "目录" , "*.*" );
      

  6.   

    using System;
    using System.IO;class aa
    {
    static void Main()
    {
    DirectoryInfo dir=new DirectoryInfo("d:\\game");
    a(dir);
    Console.ReadLine();
    } static void a(DirectoryInfo d)
    {
    DirectoryInfo[] dir=d.GetDirectories();
    foreach(DirectoryInfo dirx in dir)
    {
    Console.WriteLine(dirx.FullName);
    a(dirx);
    FileInfo[] f=dirx.GetFiles();
    foreach(FileInfo ff in f)
    {
    Console.WriteLine(ff.FullName);
    }
    }
    }
    }
      

  7.   

    /// <summary>
    /// 将指定目录下的子目录和文件生成xml文档
    /// </summary>
    /// <param name="targetDir">根目录</param>
    /// <returns>返回XmlDocument对象</returns>
    public static XmlDocument CreateXml(string targetDir)
    {
    XmlDocument myDocument = new XmlDocument();
    XmlDeclaration declaration = myDocument.CreateXmlDeclaration("1.0","utf-8",null);
    myDocument.AppendChild(declaration);
    XmlElement rootElement = myDocument.CreateElement(targetDir.Substring(targetDir.LastIndexOf("\\")+1));
    myDocument.AppendChild(rootElement);
    foreach(string fileName in Directory.GetFiles(targetDir))
    {
    XmlElement childElement = myDocument.CreateElement("File");
    childElement.InnerText = fileName.Substring(fileName.LastIndexOf("\\")+1); 
    rootElement.AppendChild(childElement);
    }
    foreach(string directory in  Directory.GetDirectories(targetDir))
    {
    XmlElement childElement = myDocument.CreateElement("Directory");
    childElement.SetAttribute("Name",directory.Substring(directory.LastIndexOf("\\")+1));
    rootElement.AppendChild(childElement);
    CreateBranch(directory,childElement,myDocument);
    }
    return myDocument;
    }
    /// <summary>
    /// 生成Xml分支
    /// </summary>
    /// <param name="targetDir">子目录</param>
    /// <param name="xmlNode">父目录XmlDocument</param>
    /// <param name="myDocument">XmlDocument对象</param>
    private static void CreateBranch(string targetDir,XmlElement xmlNode,XmlDocument myDocument)
    {
    foreach(string fileName in Directory.GetFiles(targetDir))
    {
    XmlElement childElement = myDocument.CreateElement("File");
    childElement.InnerText = fileName.Substring(fileName.LastIndexOf("\\")+1); 
    xmlNode.AppendChild(childElement);
    }
    foreach(string directory in  Directory.GetDirectories(targetDir))
    {
    XmlElement childElement = myDocument.CreateElement("Directory");
    childElement.SetAttribute("Name",directory.Substring(directory.LastIndexOf("\\")+1));
    xmlNode.AppendChild(childElement);
    CreateBranch(directory,childElement,myDocument);
    }
    }
      

  8.   

    using System;
    using System.IO;
    namespace aa
    {
    class Class1
    {
    [STAThread]
    static void Main(string[] args)
    {
    string[] files = Directory.GetFiles( @"E:\temp\Planfile" , "*.*" );
    System.IO.StreamWriter file = new System.IO.StreamWriter(@"E:\temp\list.txt");

    for (int i=0;i<files.Length;i++)
    {
    Console.WriteLine(files[i]);
    file.WriteLine(files[i]);
    }
    file.Close(); }
    }
    }