1. //C#追加文件
  2. StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt");
  3. sw.WriteLine("追逐理想");
  4. sw.WriteLine("kzlll");
  5. sw.WriteLine(".NET笔记");
  6. sw.Flush();
  7. sw.Close();
  8.  
  9. //C#拷贝文件
  10. string OrignFile,NewFile;
  11. OrignFile = Server.MapPath(".")+"\\myText.txt";
  12. NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
  13. File.Copy(OrignFile,NewFile,true);
  14.  
  15. //C#删除文件
  16. string delFile = Server.MapPath(".")+"\\myTextCopy.txt";
  17. File.Delete(delFile);
  18.  
  19. //C#移动文件
  20. string OrignFile,NewFile;
  21. OrignFile = Server.MapPath(".")+"\\myText.txt";
  22. NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
  23. File.Move(OrignFile,NewFile);
  24.  
  25. //C#创建目录
  26. // 创建目录c:\sixAge
  27. DirectoryInfo d=Directory.CreateDirectory("c:\\sixAge");
  28. // d1指向c:\sixAge\sixAge1
  29. DirectoryInfo d1=d.CreateSubdirectory("sixAge1");
  30. // d2指向c:\sixAge\sixAge1\sixAge1_1
  31. DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1");
  32. // 将当前目录设为c:\sixAge
  33. Directory.SetCurrentDirectory("c:\\sixAge");
  34. // 创建目录c:\sixAge\sixAge2
  35. Directory.CreateDirectory("sixAge2");
  36. // 创建目录c:\sixAge\sixAge2\sixAge2_1
  37. Directory.CreateDirectory("sixAge2\\sixAge2_1");
  38.  
  39. //递归删除文件夹及文件
  40. <%@ Page Language=C#%>
  41. <%@ Import namespace="System.IO"%>
  42. <Script runat=server>
  43. public void DeleteFolder(string dir)
  44. {
  45. if (Directory.Exists(dir)) //如果存在这个文件夹删除之
  46. {
  47. foreach(string d in Directory.GetFileSystemEntries(dir))
  48. {
  49. if(File.Exists(d))
  50. File.Delete(d); //直接删除其中的文件
  51. else
  52. DeleteFolder(d); //递归删除子文件夹
  53. }
  54. Directory.Delete(dir); //删除已空文件夹
  55. Response.Write(dir+" 文件夹删除成功");
  56. }
  57. else
  58. Response.Write(dir+" 该文件夹不存在"); //如果文件夹不存在则提示
  59. }
  60.  
  61. protected void Page_Load (Object sender ,EventArgs e)
  62. {
  63. string Dir="D:\\gbook\\11";
  64. DeleteFolder(Dir); //调用函数删除文件夹
  65. }

// ======================================================
  // 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面
  // 如果目标文件夹为只读属性就会报错。
 // ======================================================

  1. public static void CopyDir(string srcPath,string aimPath)
  2. {
  3. try
  4. {
  5. // 检查目标目录是否以目录分割字符结束如果不是则添加之
  6. if(aimPath[aimPath.Length-] != Path.DirectorySeparatorChar)
  7. aimPath += Path.DirectorySeparatorChar;
  8. // 判断目标目录是否存在如果不存在则新建之
  9. if(!Directory.Exists(aimPath))
  10. Directory.CreateDirectory(aimPath);
  11. // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
  12. // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
  13. // string[] fileList = Directory.GetFiles(srcPath);
  14. string[] fileList = Directory.GetFileSystemEntries(srcPath);
  15. // 遍历所有的文件和目录
  16. foreach(string file in fileList)
  17. {
  18. // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
  19. if(Directory.Exists(file))
  20. CopyDir(file,aimPath+Path.GetFileName(file));
  21. // 否则直接Copy文件
  22. else
  23. File.Copy(file,aimPath+Path.GetFileName(file),true);
  24. }
  25. }
  26. catch (Exception e)
  27. {
  28. MessageBox.Show (e.ToString());
  29. }
  30. }
  31.  
  32. public static void DeleteDir(string aimPath)
  33. {
  34. try
  35. {
  36. // 检查目标目录是否以目录分割字符结束如果不是则添加之
  37. if(aimPath[aimPath.Length-] != Path.DirectorySeparatorChar)
  38. aimPath += Path.DirectorySeparatorChar;
  39. // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
  40. // 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法
  41. // string[] fileList = Directory.GetFiles(aimPath);
  42. string[] fileList = Directory.GetFileSystemEntries(aimPath);
  43. // 遍历所有的文件和目录
  44. foreach(string file in fileList)
  45. {
  46. // 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件
  47. if(Directory.Exists(file))
  48. {
  49. DeleteDir(aimPath+Path.GetFileName(file));
  50. }
  51. // 否则直接Delete文件
  52. else
  53. {
  54. File.Delete (aimPath+Path.GetFileName(file));
  55. }
  56. }
  57. //删除文件夹
  58. System.IO .Directory .Delete (aimPath,true);
  59. }
  60. catch (Exception e)
  61. {
  62. MessageBox.Show (e.ToString());
  63. }
  64. }

C#对于文件操作的更多相关文章

  1. 【.NET深呼吸】Zip文件操作(1):创建和读取zip文档

    .net的IO操作支持对zip文件的创建.读写和更新.使用起来也比较简单,.net的一向作风,东西都准备好了,至于如何使用,请看着办. 要对zip文件进行操作,主要用到以下三个类: 1.ZipFile ...

  2. 野路子出身PowerShell 文件操作实用功能

    本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...

  3. Node基础篇(文件操作)

    文件操作 相关模块 Node内核提供了很多与文件操作相关的模块,每个模块都提供了一些最基本的操作API,在NPM中也有社区提供的功能包 fs: 基础的文件操作 API path: 提供和路径相关的操作 ...

  4. 归档NSKeyedArchiver解归档NSKeyedUnarchiver与文件管理类NSFileManager (文件操作)

    ========================== 文件操作 ========================== 一.归档NSKeyedArchiver 1.第一种方式:存储一种数据. // 归档 ...

  5. SQL Server附加数据库报错:无法打开物理文件,操作系统错误5

    问题描述:      附加数据时,提示无法打开物理文件,操作系统错误5.如下图: 问题原因:可能是文件访问权限方面的问题. 解决方案:找到数据库的mdf和ldf文件,赋予权限即可.如下图: 找到mdf ...

  6. 通过cmd完成FTP上传文件操作

    一直使用 FileZilla 这个工具进行相关的 FTP 操作,而在某一次版本升级之后,发现不太好用了,连接老是掉,再后来完全连接不上去. 改用了一段时间的 Web 版的 FTP 工具,后来那个页面也 ...

  7. Linux文件操作的主要接口API及相关细节

    操作系统API: 1.API是一些函数,这些函数是由linux系统提供支持的,由应用层程序来使用,应用层程序通过调用API来调用操作系统中的各种功能,来干活 文件操作的一般步骤: 1.在linux系统 ...

  8. C语言的fopen函数(文件操作/读写)

    头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为:    FILE * fopen(const char * path, c ...

  9. Python的文件操作

    文件操作,顾名思义,就是对磁盘上已经存在的文件进行各种操作,文本文件就是读和写. 1. 文件的操作流程 (1)打开文件,得到文件句柄并赋值给一个变量 (2)通过句柄对文件进行操作 (3)关闭文件 现有 ...

  10. python 文件操作(转)

    python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...

随机推荐

  1. expdp远程导出数据

    环境: 源: os:windows db:11.2.0.1 ip:192.168.213.129 sid:orcl 远程机导出: os:centos 6.5 x64 db:11.2.0.4 ip:19 ...

  2. Delphi系统变量:IsMultiThread对MM的影响

    前几日,调试一BUG,过程先不说,最后调试到MM,即Debug dcu,然后进入到GetMem.inc中的Get/FreeMem函数处后,出现AV. 然后一通找...郁闷了N天,后来发现将MM切换到Q ...

  3. Ultra Video Splitter & Converter

    1. Video Splitter http://www.aone-soft.com/splitter.htm Ultra Video Splitter 是一款视频分割工具.可将一个巨大的AVI/Di ...

  4. js中join函数的使用方法(js输出html标签)

    var arr = ['item 1', 'item 2', 'item 3', ...]; var list = '<ul><li>' + arr.join('</li ...

  5. 浅尝辄止——使用ActiveX装载WPF控件

    1 引言 使用VC编写的容器类编辑器,很多都可以挂接ActiveX控件,因为基于COM的ActiveX控件不仅封装性不错,还可以显示一些不错的界面图元. 但是随着技术不断的进步,已被抛弃的Active ...

  6. jenkins:通过execute shell启动的进程会被杀死的问题

    [问题]在jenkins中配置自动更新部署项目时,如果采取用execute shell启动/关闭tomcat,会发现可以进行关闭tomcat,但是无法启动tomcat,虽然构建会显示执行成功,但是查看 ...

  7. 在js中怎么样选择互斥的相邻元素

    在使用jquery中,我们通常会选择siblings()去选择相邻元素,使用eq()方法去匹配元素,使用index()获取对应元素的索引值,具体jquery代码如下: <style> *{ ...

  8. windowsxp设置开机不需密码,但是锁定后打开需要密码

    方法一: 1.先设置好密码2.设置不输入密码自动登陆系统 在cmd下运行rundll32 netplwiz.dll,UsersRunDll,在打开的窗口中,取消“要使用本机,用户必须输入用户名和密码” ...

  9. javascript date picker

    一个简洁的date picker <html><head><meta http-equiv="Content-Type" content=" ...

  10. 【转】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

    [转自]https://my.oschina.net/itblog/blog/547250 摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticS ...