[c#]部分文件操作(1)
引爆你的博客,程序开发,源代码下载,.net,数据库,Access,SqlServer,Google博客优化,费空间免费域名
//C#追加文件StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt");sw.WriteLine("追逐理想");sw.WriteLine("kzlll");sw.WriteLine(".NET笔记");sw.Flush();sw.Close();//C#拷贝文件string OrignFile,NewFile;OrignFile = Server.MapPath(".")+"\\myText.txt";NewFile = Server.MapPath(".")+"\\myTextCopy.txt";File.Copy(OrignFile,NewFile,true);//C#删除文件string delFile = Server.MapPath(".")+"\\myTextCopy.txt";File.Delete(delFile);//C#移动文件string OrignFile,NewFile;OrignFile = Server.MapPath(".")+"\\myText.txt";NewFile = Server.MapPath(".")+"\\myTextCopy.txt";File.Move(OrignFile,NewFile);//C#创建目录DirectoryInfo d=Directory.CreateDirectory("c:\\sixAge"); // 创建目录c:\sixAgeDirectoryInfo d1=d.CreateSubdirectory("sixAge1");// d1指向c:\sixAge\sixAge1DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1"); // d2指向c:\sixAge\sixAge1\sixAge1_1Directory.SetCurrentDirectory("c:\\sixAge"); // 将当前目录设为c:\sixAgeDirectory.CreateDirectory("sixAge2"); // 创建目录c:\sixAge\sixAge2Directory.CreateDirectory("sixAge2\\sixAge2_1");// 创建目录c:\sixAge\sixAge2\sixAge2_1//递归删除文件夹及文件<%@ Page Language=C#%><%@ Import namespace="System.IO"%><Script runat=server>public void DeleteFolder(string dir){ if (Directory.Exists(dir)) //如果存在这个文件夹删除之 { foreach(string d in Directory.GetFileSystemEntries(dir)) { if(File.Exists(d)) {File.Delete(d);} //直接删除其中的文件 else {DeleteFolder(d);} //递归删除子文件夹 } Directory.Delete(dir); //删除已空文件夹 Response.Write(dir+" 文件夹删除成功"); } else {Response.Write(dir+" 该文件夹不存在"); }//如果文件夹不存在则提示}protected void Page_Load (Object sender ,EventArgs e){ string Dir="D:\\gbook\\11"; DeleteFolder(Dir); //调用函数删除文件夹} // ======================================================// 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面// 如果目标文件夹为只读属性就会报错。// April 18April2005 In STU// ======================================================public static void CopyDir(string srcPath,string aimPath){ try { // 检查目标目录是否以目录分割字符结束如果不是则添加之 if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar) {aimPath += Path.DirectorySeparatorChar;} // 判断目标目录是否存在如果不存在则新建之 if(!Directory.Exists(aimPath)) Directory.CreateDirectory(aimPath); // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组 // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法 // string[] fileList = Directory.GetFiles(srcPath); string[] fileList = Directory.GetFileSystemEntries(srcPath); // 遍历所有的文件和目录 foreach(string file in fileList) { // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件 if(Directory.Exists(file)) CopyDir(file,aimPath+Path.GetFileName(file)); // 否则直接Copy文件 else File.Copy(file,aimPath+Path.GetFileName(file),true); } } catch (Exception e) { MessageBox.Show (e.ToString()); }}// ======================================================// 实现一个静态方法将指定文件夹下面的所有内容Detele// 测试的时候要小心操作,删除之后无法恢复。// April 18April2005 In STU// ======================================================public static void DeleteDir(string aimPath){ try { // 检查目标目录是否以目录分割字符结束如果不是则添加之 if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar) aimPath += Path.DirectorySeparatorChar; // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组 // 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法 // string[] fileList = Directory.GetFiles(aimPath); string[] fileList = Directory.GetFileSystemEntries(aimPath); // 遍历所有的文件和目录 foreach(string file in fileList) { // 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件 if(Directory.Exists(file)) { DeleteDir(aimPath+Path.GetFileName(file)); } // 否则直接Delete文件 else { File.Delete (aimPath+Path.GetFileName(file)); } } //删除文件夹 System.IO .Directory .Delete (aimPath,true); } catch (Exception e) { MessageBox.Show (e.ToString()); }}
0 评论:
发表评论