foreach(DirectoryInfo nextFolder in dif.GetDirectories())
{
listBox1.Items.Add(NexeFolder.Name;
}
foreach(FIleInfo nextFile in dis.GeiFiles())
{
listBox2.Items.Add(nextFile.Name);
}
{
listBox1.Items.Add(NexeFolder.Name;
}
foreach(FIleInfo nextFile in dis.GeiFiles())
{
listBox2.Items.Add(nextFile.Name);
}
楼主可以参考using System.IO;private void CopyFiles(string varFromDirectory,string varToDirectory)
{
Directory.CreateDirectory(varToDirectory); if(!Directory.Exists(varFromDirectory)) return; string[] directories = Directory.GetDirectories(varFromDirectory); if(directories.Length > 0)
{
foreach(string d in directories)
{
CopyFiles(d,varToDirectory + d.Substring(d.LastIndexOf("\\")));
}
}
string[] files = Directory.GetFiles(varFromDirectory); if(files.Length > 0)
{
foreach(string s in files)
{
File.Copy(s,varToDirectory + s.Substring(s.LastIndexOf("\\")));
}
}
}
/// 浏览某一目录下的所有文件信息并返回相关信息的数组
/// </summary>
/// <param name="str">c:\test\test</param>
/// <returns>0文件名,1创建时间,2扩展名,3文件大小</returns>
public string[] _ScanFileInfo(string str)
{ str=Server.UrlDecode(str);
string[] temp=new string[4];
DirectoryInfo dir=new DirectoryInfo(str);
FileInfo[] files=dir.GetFiles();
foreach(FileInfo file in files)
{
temp[0] += file.Name.ToString()+"|"; //文件名
temp[1] += file.CreationTime.ToString()+"|"; //文件日期
temp[2] += file.Extension.ToString()+"|";//扩展名
temp[3] += file.Length+"|";//文件长度
}
return temp;}
/// <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);
}
}
//Author: stardicky
//E-mail: [email protected]
//QQNumber: 9531511
//CompanyName: Ezone International
//Class: HBS-0308
///////////////////////////////////////文件复制精简版模块
//注:完整版包括:对文件名极其内容进行分析,文件拷贝总长度控制等...private void EzoneCopy(DirectoryInfo Dirs)
{
try
{
//获得当前目录的所有文件
FileInfo[] SubFiles=Dirs.GetFiles();
//获得当前目录的所有的子目录
DirectoryInfo[] SubDirs=Dirs.GetDirectories(); //遍历复制当前目录的文件
foreach(FileInfo file in SubFiles)
{
//创建新目录
DirectoryInfo NewDir=new DirectoryInfo(this.DataCopy+"\\"+this.NewDirName+"\\"+file.DirectoryName.Remove(0,3));
NewDir.Create();
//文件开始复制
file.CopyTo(NewDir.FullName+"\\"+file.Name,true);
}
//遍历复制当前目录的子目录
foreach(DirectoryInfo dir in SubDirs)
{
//进行递归操作
EzoneCopy(dir);
}
}//结束 Try 语句
catch(Exception Ezone)
{
//发生异常
//分析异常
//处理异常
}
}//谢谢大家给我多提意见!