1. using System;
  2. using System.IO;
  3.  
  4. namespace Demo
  5. {
  6. class Program
  7. {
  8. static string tmpPath = @"D:/LgsTest/DiretoryTest";
  9. static void Main(string[] args)
  10. {
  11. //CreateDirectory(tmpPath);
  12. ErgodicDirectory(@"D:\LgsTest\C#练习\ShenRuLiJieC#");
  13. Console.ReadKey();
  14. }
  15.  
  16. //判断指定的路径是否存在,存在的话将删除重新创建,否则只是创建
  17. static void CreateDirectory(string path)
  18. {
  19. //判断给定的路径是否存在,注意只能判断路径(即文件夹), 不具体到文件!!!
  20. if (Directory.Exists(tmpPath))
  21. {
  22. DirectoryInfo dic = new DirectoryInfo(tmpPath);
  23. //指定是否删除子目录和文件,若为 true,则删除此目录、其子目录以及所有文件
  24. //若为 false,目录不为空会报异常,即只能当目录为空的时候可以传 false
  25. dic.Delete(true);
  26. }
  27. else
  28. {
  29. Console.WriteLine(false);
  30. }
  31.  
  32. //创建目录
  33. Directory.CreateDirectory(tmpPath);
  34. }
  35.  
  36. //递归遍历某个目录,输出其中及其子目录中的文件名
  37. static void ErgodicDirectory(string path)
  38. {
  39. if (Directory.Exists(path))
  40. {
  41. DirectoryInfo dir = new DirectoryInfo(path);
  42. if (null != dir)
  43. {
  44. //返回表示某个目录中所有文件和子目录的强类型 System.IO.FileSystemInfo 项的数组。
  45. FileSystemInfo[] fileSystemInfo = dir.GetFileSystemInfos();
  46. for (int i = 0, iMax = fileSystemInfo.Length; i < iMax; ++i)
  47. {
  48. FileSystemInfo tmpFile = fileSystemInfo[i];
  49. //组合路径
  50. string tmpPath = Path.Combine(path, tmpFile.Name);
  51.  
  52. if (tmpFile is DirectoryInfo)
  53. {
  54. ErgodicDirectory(tmpPath);
  55. }
  56. else
  57. {
  58. //输出文件名
  59. Console.WriteLine(tmpFile.Name);
  60. }
  61. }
  62. }
  63. else
  64. {
  65. Console.WriteLine("wwwww");
  66. }
  67. }
  68. else
  69. {
  70. Console.WriteLine("qqqq");
  71. }
  72. }
  73. }
  74. }

  

C#中简单的文件操作实例的更多相关文章

  1. 本地Eclipse连接HDFS进行简单的文件操作

    昨天总结了一点自己在搭建Hadoop完全分布式环境过程中遇到的几个小问题以及解决方案,今天在搭建成功的环境中进行了简单的文件操作,包括:文件目录的创建.文件的创建.本地文件的上传.文件的重命名.文件的 ...

  2. java中io对文件操作的简单介绍

    11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程 ...

  3. Java最全文件操作实例汇总

    本文实例汇总了Java文件操作.分享给大家供大家参考,具体如下: 1.创建文件夹 ? 1 2 3 4 5 6 7 8 9 10 11 //import java.io.*; File myFolder ...

  4. 在安卓开发中使用SQLite数据库操作实例

    前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...

  5. python反转字符串(简单方法)及简单的文件操作示例

    Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...

  6. Foundation 框架 NSFileManager,NSData 简单的文件操作

    一.简单展示NSFileManager的使用 #import <Foundation/Foundation.h> int main(int argc, const char * argv[ ...

  7. berkerly db 中简单的读写操作(有一些C的 还有一些C++的)

    最近在倒腾BDB,才发现自己确实在C++这一块能力很弱,看了一天的api文档,总算是把BDB的一些api之间的关系理清了,希望初学者要理清数据库基本知识中的环境,句柄,游标的基本概念,这样有助于你更好 ...

  8. python作业完成简单的文件操作

    题目 请创建以学号命名的目录,在该目录中创建名称为file1.txt的文件,并将自己的个人信息(序号.姓名以及班级)等写入该文件:然后并读取文件中的内容到屏幕上:接着重新命名该文件为file2.txt ...

  9. git中 gitignore 忽略文件操作

    通常,.gitignore文件被放置在存储库的根目录中.根目录也称为父目录和当前工作目录.根文件夹包含组成项目的所有文件和其他文件夹.也就是说,您可以将它放在存储库中的任何文件夹中.你甚至可以有多个. ...

随机推荐

  1. js之数组排序

    数组,大家都不陌生,只要是学编程的人都知道这个入门的数据结构,在js中也是有数组这个概念的,跟普通的数组一样只是定义的形式不同罢了.下面是一个数组的排序代码: <html> <hea ...

  2. activemq 消息队列服务器

    ActiveMQ 安装配置 更多 安装 前置条件:1)安装JDK:2)配置 JAVA_HOME 环境变量,确保 echo $JAVA_HOME 输出JDK的安装路径 下载:wget http://ww ...

  3. suiyi

    <?php namespace app\controllers; use Yii;use app\models\Device;use app\models\DeviceSearch;use ap ...

  4. UVALive - 7261 Xiongnu's Land

    思路: 先二分下界,再二分上届. #include <bits/stdc++.h> using namespace std; #define MP make_pair #define PB ...

  5. 引入jQuery的src设置

    1.引用在线jQuery 谷歌.微软.百度都有提供在线的jQuery引用.比如 <script src="http://code.jquery.com/jquery-latest.js ...

  6. ORTP编译为静态库的问题

    项目中需要用到ORTP,我采用的编译环境是 VC2013,当我在项目设置中将设置为静态库是,发现没有导出函数,比如在需要连接 oRTP.lib库时提示 找不到 ORTP_init; 解决办法是 :在O ...

  7. linux常用命令:free 命令

    free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer.在Linux系统监控的工具中,free命令是最经常使用的命令之一. 1.命令格式: free [参 ...

  8. 每天一个Linux命令(1)ls命令

    ls是list的缩写,ls命令是Linux系统下最常用的命令之一. ls命令用于打印当前目录的清单,如果指定其它目录,那么就会显示其他目录的文件及文件夹的清单. 通过ls 命令还可以查看文件其它的详细 ...

  9. schema与catalog的理解

    sql环境中Catalog和Schema都属于抽象概念,主要用来解决命名冲突问题.一个数据库系统包含多个Catalog,每个Catalog包含多个Schema,每个Schema包含多个数据库对象(表. ...

  10. AtCoder Beginner Contest 086 D - Checker

    Time limit : 2sec / Memory limit : 256MB Score : 500 points Problem Statement AtCoDeer is thinking o ...