System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)
一、建立的文件夹(对这些文件进行以上四个类的操作):
父目录:

父目录的子目录以及父目录下的文件:

子目录下的文件:


二、效果图

三、代码实现
using System;
using System.IO;
namespace testio
{
class Program
{ static void Main(string[] args)
{
//string Path = @"C:\Users\zhangtao\Desktop\Test";
string fileNAME = "tt" + ".txt";
string Path = @"C:\Users\zhangtao\Desktop\Test" + "\\" + fileNAME;
//0、File 类
Console.WriteLine("" + "、 " + "File 类");
string fileIO = File.ReadAllText(Path); //读取文件格式为".txt"的内容
Console.WriteLine(fileIO); //读取文件格式为".txt"的内容 //1、FileInfo 类
Console.WriteLine("" + "、 " + "FileInfo 类");
FileInfo fi = new FileInfo(Path);
Console.WriteLine(fi);
Console.WriteLine(fi.CreationTime.ToString()); //获取文件创建时间
Console.WriteLine(fi.Exists);
Console.WriteLine(fi.Extension);
Console.WriteLine(fi.Attributes);
Console.WriteLine(fi.Directory); //获取文件的目录
Console.WriteLine(fi.DirectoryName);
Console.WriteLine(fi.FullName);
int position = fi.Name.LastIndexOf(".");
string filename = fi.Name.Substring(, position); //获取文件创建时间
Console.WriteLine(filename); //2、Directory 类
Console.WriteLine("" + "、 " + "Directory 类");
var files = Directory.GetFiles(@"C:\Users\zhangtao\Desktop\Test", "*.txt"); //得到该目录下所有".txt"格式的文件
foreach (var file in files)
Console.WriteLine(file); //获取文件的路径以及名字
var files01 = Directory.GetCreationTime(@"C:\Users\zhangtao\Desktop\Test"); //获取目录创建时间
Console.WriteLine(files01); var files02 = Directory.GetDirectories(@"C:\Users\zhangtao\Desktop\Test"); //得到Test目录所包含的子目录
foreach (var files002 in files02)
Console.WriteLine(files002);
//3、DirectoryInfo 类
Console.WriteLine("" + "、 " + "DirectoryInfo 类");
DirectoryInfo folder = new DirectoryInfo(@"C:\Users\zhangtao\Desktop\Test");
Console.WriteLine(folder);
foreach (DirectoryInfo dd in folder.GetDirectories()) //获取子目录的名称
{
Console.WriteLine(dd);
}
foreach (FileInfo file in folder.GetFiles("*.txt"))
{
Console.WriteLine(file.Name); //获取该目录所包含文件的名字
Console.WriteLine(file.CreationTime); //获取文件创建时间
Console.WriteLine(file.FullName); //获取文件的路径以及名字
Console.WriteLine(file.Directory); //获取文件目录路径
Console.WriteLine(file.Extension); //获取文件格式 }
//Console.WriteLine(GetFoldAll(Path));
Console.ReadKey(); }
}
}
附:
如何获取指定目录包含的文件和子目录:
1. DirectoryInfo.GetFiles():获取目录中(不包含子目录)的文件,返回类型为FileInfo[],支持通配符查找;
2. DirectoryInfo.GetDirectories():获取目录(不包含子目录)的子目录,返回类型为DirectoryInfo[],支持通配符查找;
3. DirectoryInfo. GetFileSystemInfos():获取指定目录下(不包含子目录)的文件和子目录,返回类型为FileSystemInfo[],支持通配符查找;
如何获取指定文件的基本信息:
FileInfo.Exists:获取指定文件是否存在;
FileInfo.Name,FileInfo.Extensioin:获取文件的名称和扩展名;
FileInfo.FullName:获取文件的全限定名称(完整路径);
FileInfo.Directory:获取文件所在目录,返回类型为DirectoryInfo;
FileInfo.DirectoryName:获取文件所在目录的路径(完整路径);
FileInfo.Length:获取文件的大小(字节数);
FileInfo.IsReadOnly:获取文件是否只读;
FileInfo.Attributes:获取或设置指定文件的属性,返回类型为FileAttributes枚举,可以是多个值的组合
FileInfo.CreationTime、FileInfo.LastAccessTime、FileInfo.LastWriteTime:分别用于获取文件的创建时间、访问时间、修改时间;
【欢迎转载】
转载请表明出处: 乐学习
System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)的更多相关文章
- CMake error:System Error:No such file or directory CMake error:Could not open file for write in copy operation xxxx.ros_Config.cmake.tmp.
微型电脑或嵌入式与电脑还是有点不同的,在微型电脑上ros indigo 版本下利用catkin编译如果你遇到如下错误: CMake error:System Error:No such file or ...
- (转)使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解 本文用代码简单介绍cjson的使用方法,1)创建json,从json中获取数据.2)创建json数组和解析json数组 1. 创 ...
- C# Directory和DirectoryInfo类(文件目录操作)
对目录操作例子: using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...
- File,FileInfo,Directory,DirectoryInfo
两者的共同点: 一:都用于典型的操作,如复制.移动.重命名.创建.打开.删除和追加到文件 二:默认情况下,将向所有用户授予对新文件的完全读/写访问权限. 两者的区别: File类是静态类, ...
- Linux System Programming note 8 ——File and Directory Management
1. The Stat Family #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> ...
- 使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
本文用代码简单介绍cjson的使用方法,1)创建json,从json中获取数据.2)创建json数组和解析json数组 1. 创建json,从json中获取数据 #include <stdio. ...
- 关于android studio中使用class.forname()方法动态获取类实例报NO CLASS FOUND异常的几种处理方法
最近在做一个项目的时候需要用到反射来回调子类的方法,但是在反射过程中总是在class.forname()方法抛出NO CLASS FOUND异常,经过几部检查,问题解决,在此总结一下引起该问题的原因 ...
- C#回顾 - 2.NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher
1.管理文件系统 一般而言,应用程序都会有保存数据.检索数据的需求. 1.1 使用 path 类来访问文件路径 [path常用的方法]:http://www.cnblogs.com/tangg ...
- move file create directory.
If we want to move file to the directory that does not exist,and if we perform a File.Move,it will r ...
随机推荐
- Javascript操作Cookie的脚本 — CookieHelper
var HttpCookie = function(name, value, expires, path, domain) { if (name) this.Name = name; if (valu ...
- each循环
var NA_COUNT=0; var NG_OK_COUNT=0; //获取所有检验明细为同一个编号的下拉选项,看有没有不是N/A的下拉选项 $("#@(Perfix)tbData sel ...
- 优秀IT技术文章集(最新)(高质量)
作者:赵磊 博客:http://elf8848.iteye.com 阅读优秀的文章可以使你快速进步,本文收集了广受好评的优秀IT技术文章,在你有空时读一读,安静下来思考一下. 不断更新中... --- ...
- 获取父iframe的高宽
var p_window = window.top; //alert($(p_window).height()); var p_demo = window.top.docu ...
- IE10、IE11解决不能播放Flash的问题!
http://jingyan.baidu.com/article/154b46315421b528ca8f41e4.html ie的问题向来是windows系统的传统问题之一.几乎每个版本的windo ...
- Linux free命令详解(转)
解释一下Linux上free命令的输出.(转自:http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html) 下面是fre ...
- eclipse将编辑栏一分为二
今天无意中发现一个MyEclipse的功能,CTRL SHIF - 三个键一起按下时,同一个编辑窗口会一分为二.这样我们写下面代码需要参考前面代码的时候就很方便了.
- for语句
一.for语句的格式格式1:for (控制变量初始化表达式;条件表达式;增量表达式) 语句1; 格式2:for (控制变量初始化表达式;条件表达式;增量表达式){ 语句1; 语句2; -} 注意 ...
- tomcat下的https项目创建与部署
1.1 生成keystore文件及导出证书 步奏1:打开控制台,运行: %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (如果你已经 ...
- springMVC操作mongoDB增删改查
下面是mongoDb简单的增删改查(新闻类) 附:query.addCriteria(Criteria.where("modelId").ne("").ne(n ...