`

C#中常用的经典文件操作方法

阅读更多

C#追加文件
StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt");
sw.WriteLine("追逐理想");
sw.WriteLine("kzlll");
sw.WriteLine(".NET笔记");
sw.Flush();
sw.Close();

C#拷贝文件stringOrignFile,NewFile;
rignFile = Server.MapPath(".")+"\\myText.txt";
NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Copy(OrignFile,NewFile,true);

C#删除文件stringdelFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Delete(delFile);

C#移动文件stringOrignFile,NewFile;
rignFile = Server.MapPath(".")+"\\myText.txt";
NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Move(OrignFile,NewFile);

C#创建目录// 创建目录c:\sixAgeDirectoryInfo d=Directory.CreateDirectory("c:\\sixAge");// d1指向c:\sixAge\sixAge1DirectoryInfo d1=d.CreateSubdirectory("sixAge1");// d2指向c:\sixAge\sixAge1\sixAge1_1DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1");// 将当前目录设为c:\sixAgeDirectory.SetCurrentDirectory("c:\\sixAge");// 创建目录c:\sixAge\sixAge2Directory.CreateDirectory("sixAge2");// 创建目录c:\sixAge\sixAge2\sixAge2_1Directory.CreateDirectory("sixAge2\\sixAge2_1");

递归删除文件夹及文件publicvoidDeleteFolder(stringdir)
{if(Directory.Exists(dir))//如果存在这个文件夹删除之{foreach(stringdinDirectory.GetFileSystemEntries(dir)) {if(File.Exists(d))
                File.Delete(d);//直接删除其中的文件elseDeleteFolder(d);//递归删除子文件夹}
        Directory.Delete(dir);//删除已空文件夹Response.Write(dir+" 文件夹删除成功");
    }elseResponse.Write(dir+" 该文件夹不存在");//如果文件夹不存在则提示}protectedvoidPage_Load (Objectsender ,EventArgs e)
{stringDir="D:\\gbook\\11";
    DeleteFolder(Dir);//调用函数删除文件夹}// ======================================================// 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面// 如果目标文件夹为只读属性就会报错。// April 18April2005 In STU// ======================================================publicstaticvoidCopyDir(stringsrcPath,stringaimPath)
{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(stringfileinfileList)
    {// 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件if(Directory.Exists(file))
      CopyDir(file,aimPath+Path.GetFileName(file));// 否则直接Copy文件elseFile.Copy(file,aimPath+Path.GetFileName(file),true);
    }
   }catch(Exception e)
   {
    MessageBox.Show (e.ToString());
   }
}// ======================================================// 实现一个静态方法将指定文件夹下面的所有内容Detele// 测试的时候要小心操作,删除之后无法恢复。// April 18April2005 In STU// ======================================================publicstaticvoidDeleteDir(stringaimPath)
{try{// 检查目标目录是否以目录分割字符结束如果不是则添加之if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)
     aimPath += Path.DirectorySeparatorChar;// 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组// 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法// string[] fileList = Directory.GetFiles(aimPath);string[] fileList = Directory.GetFileSystemEntries(aimPath);// 遍历所有的文件和目录foreach(stringfileinfileList)
    {// 先当作目录处理如果存在这个目录就递归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());
   }
}

需要引用命名空间:usingSystem.IO;publicstaticvoidCopyFolder(stringstrFromPath,stringstrToPath)
{//如果源文件夹不存在,则创建if(!Directory.Exists(strFromPath))
   {   
    Directory.CreateDirectory(strFromPath);
   }//取得要拷贝的文件夹名stringstrFolderName = strFromPath.Substring(strFromPath.LastIndexOf("\\") + 1,strFromPath.Length - strFromPath.LastIndexOf("\\") - 1);//如果目标文件夹中没有源文件夹则在目标文件夹中创建源文件夹if(!Directory.Exists(strToPath +"\\"+ strFolderName))
   {   
    Directory.CreateDirectory(strToPath +"\\"+ strFolderName);
   }//创建数组保存源文件夹下的文件名string[] strFiles = Directory.GetFiles(strFromPath);//循环拷贝文件for(inti = 0;i < strFiles.Length;i++)
   {//取得拷贝的文件名,只取文件名,地址截掉。stringstrFileName = strFiles[i].Substring(strFiles[i].LastIndexOf("\\") + 1,strFiles[i].Length - strFiles[i].LastIndexOf("\\") - 1);//开始拷贝文件,true表示覆盖同名文件File.Copy(strFiles[i],strToPath +"\\"+ strFolderName +"\\"+ strFileName,true);
   }//创建DirectoryInfo实例DirectoryInfo dirInfo =newDirectoryInfo(strFromPath);//取得源文件夹下的所有子文件夹名称DirectoryInfo[] ZiPath = dirInfo.GetDirectories();for(intj = 0;j < ZiPath.Length;j++)
   {//获取所有子文件夹名stringstrZiPath = strFromPath +"\\"+ ZiPath[j].ToString();//把得到的子文件夹当成新的源文件夹,从头开始新一轮的拷贝CopyFolder(strZiPath,strToPath +"\\"+ strFolderName);
   }
}

CreateDirectory方法方法的使用方法usingSystem;usingSystem.IO;classTest    
{publicstaticvoidMain()    
          {//   Specify   the   directory   you   want   to   manipulate.stringpath   =@"c:\MyDir";try{//   Determine   whether   the   directory   exists.if(Directory.Exists(path))    
                          {Console.WriteLine("That   path   exists   already.");return;  
                          }//   Try   to   create   the   directory.DirectoryInfo   di   =   Directory.CreateDirectory(path);Console.WriteLine("The   directory   was   created   successfully   at   {0}.",   Directory.GetCreationTime(path));//   Delete   the   directory.di.Delete();Console.WriteLine("The   directory   was   deleted   successfully.");  
                  }catch(Exception   e)    
                  {Console.WriteLine("The   process   failed:   {0}",   e.ToString());  
                  }finally{}  
          }  
}

 

http://space.itpub.net/12639172/viewspace-623291

分享到:
评论

相关推荐

    C#中常用的经典文件操作方法.doc

    ### C#中常用的经典文件操作方法 在C#编程中,对文件进行操作是非常常见的需求之一。无论是简单的读写操作还是复杂的文件管理任务,掌握基本的文件操作技巧都是必不可少的。本文将详细介绍C#中的一些经典文件操作...

    C# 读取EXCEL文件的三种经典方法.docx

    在C#中,读取Excel文件有多种方法,这里我们将探讨三种经典方法。这些方法主要应用于需要从Excel文件中提取数据或与Excel文件交互的场景。 **方法一:采用OleDB读取Excel文件** OleDb是.NET Framework提供的一种...

    C#经典87例 C#控件操作 C#文件管理 C#程序设置 C#系统维护

    本教程通过"87个经典实例"(虽然压缩包名为“C#经典150例”,但从描述中只提到87例)深入浅出地讲解了这些关键领域,旨在提升C#程序员的实际操作能力。 **1. C#控件操作** 在C#中,Windows Forms和WPF提供了丰富的...

    C#常用操作经典百例

    文件操作是许多实际应用中常见的需求。C#提供了丰富的文件和流处理API,可以用来读写文本文件、二进制文件,或者进行网络上的数据传输。 线程和并发处理是现代多核处理器环境下提升程序性能的重要手段。C#提供了...

    C#入门经典(第7版)中文目录包含源码文件

    C#7.0允许接口中有默认实现的方法,增强了灵活性。 6. **集合和LINQ**:C#提供了丰富的集合类,如List、Dictionary, TValue&gt;等。LINQ(Language Integrated Query)则提供了查询数据的强大工具,支持数据库、XML、...

    C#.NET文件下载经典方法.

    本文将深入探讨C#.NET实现文件下载的经典方法,并通过实际示例解释其工作原理。 一、HTTP协议基础 文件下载通常涉及到HTTP协议,尤其是HTTP响应中的"Content-Disposition"和"Content-Type"头部。"Content-...

    C#文件加密及其播放器(经典)

    在IT领域,C#是一种广泛使用的编程语言,尤其在开发桌面应用、游戏、移动应用以及Web应用中。本文将深入探讨如何使用C#进行文件加密,以及如何创建一个能够播放这些加密文件的播放器。 首先,让我们理解文件加密的...

    C#——经典案例 c#经典案例.pdf

    根据提供的文件信息,我们可以总结出以下C#编程语言中的几个重要知识点: ### 1. 输出整型数据 在C#中,整型数据是程序中最常见的数据类型之一,包括多种不同的类型来满足不同范围和用途的需求。以下是示例代码中...

    c#教程c#入门经典教程入门经典教程入门经典教程入门经典教程

    本教程将详细介绍C#中进行文件操作的相关知识。 首先,我们来看C#中对文件操作的主要类。`File`类提供了静态方法,可以用来创建、复制、删除、移动和打开文件。例如,你可以使用`File.WriteAllText()`方法来写入...

    C# 常用控件经典练习项目源程序

    "C#常用控件经典练习项目源程序"是一个极好的学习资源,尤其适合初学者和对编程有热情的人。这个项目将C#中的多种常用控件集成为一个项目,让你能够一次性了解和实践各种控件的用法。 首先,我们要提到窗体(Form)...

    C#经典常用类库集合!不经典我给你100分!

    例如,File类提供了静态方法用于文件操作,Stream类是所有I/O操作的基础抽象类。 4. **System.Linq**:语言集成查询(Language Integrated Query)扩展了.NET框架,为集合提供了强大的查询能力,使用类似于SQL的...

    C# XML入门经典.pdf

    文件中提及的标题为"C# XML入门经典.pdf",说明这本书籍主要面向的是已经具备一定C#编程基础,但是对XML技术尚缺乏了解的开发人员。描述中对PDF格式的强调,并没有提供额外的信息,而标签"XML"则点明了书籍的技术...

    《C#入门经典》全书例子代码

    书中的例子涵盖了各种编程场景,包括简单的数学计算、文件操作、网络通信、图形界面设计等,确保你在实践中不断进步。所以,不要只是阅读,更要动手实践,让代码在你的指尖舞动,感受C#的魅力吧!

    C#导入导出excel文件案例 c#经典案例.pdf

    6. Excel文件操作:文章中还涉及到Excel文件操作的相关知识点,例如如何使用C#来读取和写入Excel文件、如何将数据导出到Excel文件中等。 7. 报表生成和导出:文章中还涉及到报表生成和导出的相关知识点,例如如何...

    C#WinForm开发经典图标素材总共有3800

    在C# WinForm应用开发中,用户界面的设计是至关重要的,因为它直接影响到用户的体验和对软件的第一印象。本文将详细探讨如何利用提供的“C# WinForm开发经典图标素材总共有3800”这一资源来提升你的WinForm应用程序...

    C#程序设计经典教程实验原代码

    在"C#程序设计经典教程"中,我们深入探讨了C#这门强大的编程语言,它被广泛用于构建桌面应用、游戏、移动应用以及Web应用程序。本教程的目标是帮助初学者和有经验的开发者掌握C#的核心概念和技术,通过一系列的实践...

    C# 文件保存等处理操作,经典!可以借鉴!!

    本篇文章将详细讲解C#中关于文件保存的相关知识点,包括基本概念、常用方法以及实际应用示例。 1. **基本概念** - 文件流:在C#中,文件操作主要通过`System.IO`命名空间中的类来实现,其中最核心的是`FileStream`...

Global site tag (gtag.js) - Google Analytics