本文主要介绍文件类、文件信息类、目录类、目录信息类的常用属性和方法

1、File(文件类)

// 1、判断文件是否存在
bool isFileExist = File.Exists(@"D:\test.txt");
// 2、创建文件,如存在则将其内容覆盖掉,路径不存在或文件夹不存在或文件夹为只读则抛出异常
File.Create(@"D:\testnew.txt");
if(isFileExist)
{// 3、复制文件,无第三个参数则不允许覆盖同名文件,反之则允许;路径不存在或文件夹不存在或进程被占用则抛出异常File.Copy(@"D:\testnew.txt", @"D:\test\testnew.txt", true);// 4、移动文件,如源文件地址或目标文件地址不存在、目标文件已存在,则抛出异常File.Move(@"D:\test1\testnew.txt", @"D:\test2\testnew.txt");// 5、删除文件File.Delete(@"D:\testnew.txt");
}

2、FileInfo(文件信息类)

// 1、实例化新的FileInfo对象并指定文件路径
FileInfo fileInfo = new FileInfo(@"D:\testfileinfo.txt");
// 2、判断文件是否存在
bool isFileInfoExist = fileInfo.Exists;
// 3、创建新文件
//fileInfo.Create();
if(isFileInfoExist)
{// 4、复制现有文件到新文件,无第二个参数则不允许覆盖同名文件,反之则允许;路径不存在或文件夹不存在或进程被占用则抛出异常fileInfo.CopyTo(@"D:\testfileinfonew.txt", true);// 5、移动文件,如源文件地址或目标文件地址不存在、目标文件已存在,则抛出异常fileInfo.MoveTo(@"D:\testfileinfonew1.txt");// 6、删除文件fileInfo.Delete();
}
#region 获取文件信息
Console.WriteLine("获取文件是否存在:" + fileInfo.Exists); // True
if(fileInfo.Exists)
{Console.WriteLine("获取文件名称:" + fileInfo.Name); // testfileinfo.txtConsole.WriteLine("获取文件的大小:" + fileInfo.Length); // 0Console.WriteLine("获取文件的完整目录:" + fileInfo.FullName); // D:\testfileinfo.txtConsole.WriteLine("获取文件的完整路径:" + fileInfo.DirectoryName); // D:\Console.WriteLine("获取文件的属性:" + fileInfo.Attributes); // ArchiveConsole.WriteLine("获取文件是否只读:" + fileInfo.IsReadOnly); // FalseConsole.WriteLine("获取文件的扩展名:" + fileInfo.Extension); // .txtConsole.WriteLine("获取文件的创建时间:" + fileInfo.CreationTime); // 2021/12/31 11:45:08Console.WriteLine("获取文件的UTC创建时间:" + fileInfo.CreationTimeUtc); // 2021/12/31 3:45:08Console.WriteLine("获取文件最后一次被访问的时间:" + fileInfo.LastAccessTime); // 2021/12/31 11:45:08Console.WriteLine("获取文件最后一次被访问的UTC时间:" + fileInfo.LastAccessTimeUtc); // 2021/12/31 3:45:08Console.WriteLine("获取文件最后一次被写入的时间:" + fileInfo.LastWriteTime); // 2021/12/31 11:45:08Console.WriteLine("获取文件最后一次被写入的UTC时间:" + fileInfo.LastWriteTimeUtc); // 2021/12/31 3:45:08
}
#endregion

3、Directory(目录类)

// 1、判断目录是否存在
bool isDirectoryExist = Directory.Exists(@"D:\test");
// 2、创建目录
Directory.CreateDirectory(@"D:\test");
// 3、删除一个空目录,这个目录必须是可写的和空的
Directory.Delete(@"D:\test");
if(isDirectoryExist)
{// 4、删除指定的目录,如果指定的话,还包括该目录中的任何子目录和文件;目录或指定路径不存在则抛出异常Directory.Delete(@"D:\test", true);// 5、将一个文件或一个目录及其内容移动到一个新的位置,如果源目录地址是一个文件,那么目标目录地址也必须是一个文件名;源目录文件或目标目录文件或指定路径不存在、或者同名的文件或目录已经存在则抛出异常Directory.Move(@"D:\test\test.txt", @"D:\test1\test1.txt");// 6、返回指定目录中的文件名称(包括其路径)string[] files = Directory.GetFiles("d:\\");// 7、返回指定目录中符合指定搜索模式的文件名称(包括其路径)string[] filesWithSpecifySearchMode = Directory.GetFiles("d:\\", "*.txt");// 8、返回指定目录下的子目录名称(包括其路径)string[] directories = Directory.GetDirectories("d:\\");// 9、返回指定目录中符合指定搜索模式的子目录的名称(包括其路径)string[] directoriesWithSpecifySearchMode = Directory.GetDirectories("d:\\", "test*");// 10、获取应用程序的当前工作目录(绝对路径,并且不以反斜杠(\)结尾)string currentDirectory = Directory.GetCurrentDirectory();// 11、获取装配体解析器用来探测装配体的基础目录(和上面第10条的区别在于以反斜杠(\)结尾,多个结尾的反斜杠(\))string baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
}

4、DirectoryInfo(目录信息类)

// 1、实例化新的DirectoryInfo对象并指定文件夹路径
DirectoryInfo directoryInfo = new DirectoryInfo("d:\\test");
// 2、判断目录是否存在
bool isDirectoryInfoExist = directoryInfo.Exists;
// 3、创建目录
directoryInfo.Create();
// 4、删除空目录;非空目录抛出异常
directoryInfo.Delete();
// 5、指定是否删除子目录和文件
directoryInfo.Delete(true);
if(isDirectoryInfoExist)
{// 6、移动文件,将一个DirectoryInfo实例及其内容移动到一个新的路径;源目录或指定路径不存在则抛出异常directoryInfo.MoveTo("d:\\test1");// 7、返回当前目录的子目录;目录或指定路径不存在则抛出异常DirectoryInfo[] directoryInfos = directoryInfo.GetDirectories();// 8、返回当前目录下的文件列表FileInfo[] fileInfos = directoryInfo.GetFiles();// 9、返回当前目录中符合给定搜索模式的文件列表FileInfo[] fileInfosWithSearchMode = directoryInfo.GetFiles("*.txt");#region 获取目录或文件信息Console.WriteLine("获取目录名称:" + directoryInfo.Name); // testConsole.WriteLine("获取目录或文件的完整路径:" + directoryInfo.FullName); // d:\testConsole.WriteLine("获取文件的扩展名:" + directoryInfo.Extension);Console.WriteLine("获取目录的根部分:" + directoryInfo.Root); // d:\Console.WriteLine("获取或设置当前文件或目录的属性:" + directoryInfo.Attributes); // DirectoryConsole.WriteLine("获取指定子目录的父目录:" + directoryInfo.Parent); // d:\Console.WriteLine("获取或设置当前文件或目录的创建时间:" + directoryInfo.CreationTime); // 2021/12/31 14:59:31Console.WriteLine("获取或设置当前文件或目录的UTC创建时间:" + directoryInfo.CreationTimeUtc); // 2021/12/31 6:59:31Console.WriteLine("获取或设置当前文件或目录最后被访问的时间:" + directoryInfo.LastAccessTime); // 2021/12/31 15:03:49Console.WriteLine("获取或设置当前文件或目录最后被访问的UTC时间:" + directoryInfo.LastAccessTimeUtc); // 2021/12/31 7:03:49Console.WriteLine("获取或设置当前文件或目录最后被写入的时间:" + directoryInfo.LastWriteTime); // 2021/12/31 15:03:49Console.WriteLine("获取或设置当前文件或目录最后被写入的UTC时间:" + directoryInfo.LastWriteTimeUtc); // 2021/12/31 7:03:49#endregion
}

注:本文实例代码下载:C# File、FileInfo、Directory、DirectoryInfo

以上就是.NET Core 日志记录程序和常用日志记录框架的简单使用的介绍,做此记录,如有帮助,欢迎点赞关注收藏!

C# File、FileInfo、Directory、DirectoryInfo相关推荐

  1. 【C#进阶四】详细总结C#中的文件和I/O流之文件和目录(File 、 FileInfo、Directory、DirectoryInfo和Path)

    文章目录 1 Flie类 1.1常用属性.方法 1.2 代码示例(详细) 2 FileInfo 2.1 常用属性.方法 2.2 代码示例 3 Directory 类 3.1 常用方法和属性: 3.2 ...

  2. 文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类

    命名空间:using system .IO; 1. File类: 创建:File.Create(路径);创建文件,返回FileStream FileStream fs = File.Create(路径 ...

  3. C#中DirectoryInfo类、目录信息类、文件夹信息类的用法

    一.file和fileinfo都提供对文件的操作 ①file类提供静态的方法,file类不能被继承,也不能产生实例,如果只需要使用一次或者次数很少,那么使用file类会比使用fileinfo效率高,但 ...

  4. JAVA基础学习day21--IO流三-File、Properties、PrintWriter与合并、分割流

    一.File 1.1.File概述 文件和目录路径名的抽象表示形式. 用户界面和操作系统使用与系统相关的路径名字符串 来命名文件和目录.此类呈现分层路径名的一个抽象的.与系统无关的视图.抽象路径名 有 ...

  5. zookeeper下载安装、zookeeper-3.4.6下载安装、Windows启动zookeeper、zookeeper启动闪退解决、\..\conf\zoo.cfg file is missin

    zookeeper下载安装.zookeeper-3.4.6下载安装.Windows启动zookeeper.zookeeper启动闪退解决.zookeeper找不到zoo.cfg配置:\..\conf\ ...

  6. Java高级:IO流、File类、抽象基类、节点流、缓冲流、图片加密、其他流、对象流、随机存取文件流

    package com.atguigu.java3;import org.junit.Test;import java.io.File; import java.io.IOException; imp ...

  7. JAVA基础初探(十二)Map接口及其常用实现类(HashMap)、File类详解(概述、创建、删除、重命名、文件属性读取/设置、遍历文件夹)

    该篇博客目录 1.Map接口及其常用实现类(HashMap.Hashtable) 2.File类(概述.创建.删除.重命名.文件属性读取/设置.遍历文件夹) 一.Map接口及其常用实现类(HashMa ...

  8. input file详细介绍、更改css样式、获取图片地址、彻底清空上传文件(建议收藏)

    文章目录 博客内容 介绍 input 全部类型 file 类型 属性 accept属性 multiple属性 事件监听 css样式更改 上传图片文件,获取图片地址 input type file上传文 ...

  9. C#学习七(包含File字节流,list泛型集合、拆装箱、ictionary字典,文件流FileStream、StreamReader和StreamWrite、多态)

    一.对前面部份的总结 using System.Collections; using System.IO; using System.Text;namespace _074_复习 {class Pro ...

最新文章

  1. IDEA的maven项目报错BeanCreationException: Error creating bean with name “xxxController”
  2. 打开闪光灯_用手机拍照这么久,你居然还不知道闪光灯怎么用
  3. 移动app测试之怎么避免bug漏测
  4. sc.textFile的相对路径与绝对路径
  5. android 本地数据库sqlite的封装
  6. P4719-[模板]动态DP【矩阵乘法,树链剖分,线段树】
  7. windows redis批量删除前缀的key_阿里官方Redis开发规范!
  8. leetcode189. 旋转数组
  9. android设置wifiip地址,android Wifi 设置静态ip地址的方法
  10. Java基础学习总结(137)——Java ClassLoader再总结
  11. html点导航栏换图片,jQuery点击导航栏选中更换样式的实现代码
  12. mac下缺乏make wget怎么办?
  13. 网页制作初期,必须的东西
  14. 解决Windows Vista/7/8/8.1 远程桌面连接XP或2003缓慢的问题
  15. WPF DataGrid使用 后台界面修改前台不刷新问题
  16. Sql Server 2005 开发版亲测可用下载地址
  17. C++连接MySQL数据库教程|如何连接数据库
  18. excel拆分单元格内容_Excel 快捷键合集
  19. Java学习路线:day1 Java语言概述
  20. 黑苹果安装各种问题解决办法

热门文章

  1. 3D全景特点展现,深入解读3D全景被追捧原因
  2. NSX ALB + Harbor + OpenShift 4.8 UPI安装配置实验笔记系列目录
  3. 企业级负载均衡解决方案之九:AWS CLB/ALB/NLB
  4. 学习Python 免费电子书 TOP10(含下载)
  5. python 统计各个文件夹图片数目的柱状图,并给各个类标注标签
  6. 投影仪怎么连接电脑?快来看看这3种方法!
  7. 清洗膜用消泡剂的产品信息与应用方面方法!
  8. 中国邮政领取Google AdSense 西联汇款表单填写样本(附图)
  9. 亚马逊云计算AWS介绍
  10. 开源技术_开源,超越技术