• 如何获取一个目录下包含子目录内的所有文件名,并保存在一个数组中或XML文档里


    private   void   getDirectories(string   path) 
    { 
    string[]   fileNames   =   Directory.GetFiles(path); 
    string[]   directories   =   Directory.GetDirectories(path); 
    foreach   (string   file   in   fileNames) 
    { 
    Console.WriteLine( "Filename:{0} ",file); 
    } 
    foreach   (string   dir   in   directories) 
    { 
    Console.WriteLine( "Directoriesname:{0} ",dir); 
    getDirectories(dir); 
    } 
    } 
    
    Console.WriteLine这个地方你可以换成arraylist
    


     

    可以参考我以前写的一个类,生成xml文件。 
    http://blog.csdn.net/zhzuo/archive/2005/03/08/315125.aspx 
    
    ///   <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(PATH_SPLIT_CHAR)   +   1)); 
    
                                myDocument.AppendChild(rootElement); 
    
                                foreach(string   fileName   in   Directory.GetFiles(targetDir)) 
    
                                {                                   
    
                                          XmlElement   childElement   =   myDocument.CreateElement( "File ");   
    
                                          childElement.InnerText   =   fileName.Substring(fileName.LastIndexOf(PATH_SPLIT_CHAR)   +   1); 
    
                                          rootElement.AppendChild(childElement); 
    
                                } 
    
                                foreach(string   directory   in     Directory.GetDirectories(targetDir)) 
    
                                { 
    
                                          XmlElement   childElement   =   myDocument.CreateElement( "Directory "); 
    
                                          childElement.SetAttribute( "Name ",directory.Substring(directory.LastIndexOf(PATH_SPLIT_CHAR)   +   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(PATH_SPLIT_CHAR)+1); 
    
                                          xmlNode.AppendChild(childElement); 
    
                                } 
    
                                foreach(string   directory   in     Directory.GetDirectories(targetDir)) 
    
                                { 
    
                                          XmlElement   childElement   =   myDocument.CreateElement( "Directory "); 
    
                                          childElement.SetAttribute( "Name ",directory.Substring(directory.LastIndexOf(PATH_SPLIT_CHAR)   +   1)); 
    
                                          xmlNode.AppendChild(childElement); 
    
                                          CreateBranch(directory,childElement,myDocument); 
    
                                } 
    
                      }               
    
              } 
    
            
    
    }
    
  • 相关阅读:
    第七节:详细讲解Java中的日期,java.util.date
    第六节:详细讲解Java中的装箱与拆箱及其字符串
    第五节:详细讲解Java中的接口与继承
    第四节:详细讲解Java中的类和面向对象思想
    第三节:带你详解Java的操作符,控制流程以及数组
    第二节:Java入门第一行代码
    第一节:学会Java前提-手把手教你配置JDK环境变量
    Android精通之Handler讲解
    Android精通之AsyncTask与ListView讲解
    Android精通之AsyncTask与ListView讲解
  • 原文地址:https://www.cnblogs.com/xiaofengfeng/p/2119204.html
Copyright © 2020-2023  润新知