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 ...
随机推荐
- 学习SQL的点点滴滴(三)-修改数据库的兼容级别
语法 ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 } 参数 database_name 要修改的数据库 ...
- struts2 Demo
参考资料 :http://www.cnblogs.com/yangy608/archive/2010/11/08/1871962.htmlhttp://www.yiibai.com/struts2/s ...
- PostMessager来对子父窗体进行跨域
一.为什么需要使用postMessage这个跨域技术 对于一个普通的页面而言,如果页面中的数据量太多时,会导致某个页面的数据量太多 二显得特别的臃肿,所以通常是使用iframe的方式来加载子页面,但是 ...
- 圆内接三角形(X神的代码玩的真好)
设$S$为半径等于$1$的圆内接三角形的面积,则$4S+\dfrac 9S$的最小值是_______. [分析与解] 先证明$S$的最大值为$\dfrac{3\sqrt 3}4$.设$\triangl ...
- Angular(1)
1.设计原则 1.YAGNI 不要把未来需求引入当前工程 2.KISS keep it simple and stupid 语义化标记 合理注释 符合规定的命名 3.DRY(don't re ...
- PHP发送邮件的两种方式
1.用SMTP方式发送邮件.引入phpmailer文件包,然后在文件中 <?php require_once("phpmailer/class.phpmailer.php") ...
- 【原】Windows下常用命令
1.小技巧 打开"运行"对话框(Win+R),输入cmd,打开控制台命令窗口... 也可以通过cmd /c 命令 和 cmd /k 命令的方式来直接运行命令 注:/c表示执行完命令 ...
- Mono addin 学习笔记 2
下面分析用xml描述文件的方式来进行插件定义 定义扩展点如下: public interface ISnippetProvider { string GetText (string shortcut) ...
- C++设计模式-Builder建造者模式
作用:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. Builder模式和AbstractFactory模式在功能上很相似,因为都是用来创建大的复杂的对象,它们的区别是:B ...
- 如何利用tomcat和cas实现单点登录(2):配置cas数据库验证和cas客户端配置
接(1),上一篇主要讲述了tomcat和cas server端的部署. 接下来主要还有两个步骤. 注意:为了开启两个tomcat,要把直接配置的tomcat的环境变量取消!!!!!!!!!! 客户端配 ...