C# FileInfo类的使用方法及常用操作(附代码示例)


在C#编程中,处理文件操作是一项常见而重要的任务。为了更好地管理和操作文件,C#提供了一个强大且灵活的FileInfo类。本文将深入探讨C# FileInfo类的使用方法,并为您提供一些实用的代码示例。


目录

  • 一、什么是FileInfo类?
  • 二、使用FileInfo类
    • [1. 创建FileInfo对象](#1. 创建FileInfo对象)
    • [2. 获取文件属性信息](#2. 获取文件属性信息)
    • [3. 文件操作](#3. 文件操作)
      • [3.1 复制文件](#3.1 复制文件)
      • [3.2 移动文件](#3.2 移动文件)
      • [3.3 删除文件](#3.3 删除文件)
    • [4. 判断文件是否存在](#4. 判断文件是否存在)
  • 总结

一、什么是FileInfo类?

FileInfo类是位于System.IO命名空间中的一个类,它提供了一系列用于操纵文件的属性和方法。通过FileInfo类,我们可以轻松获取有关文件的信息,如文件大小、创建日期、修改日期等。此外,FileInfo类还提供了一些便捷的方法,来进行文件复制、移动、删除等操作。


二、使用FileInfo类

1. 创建FileInfo对象

要使用FileInfo类,首先需要创建一个FileInfo对象。我们可以使用以下方法之一来实现:

csharp 复制代码
string filePath = "D:\\新建 文本文档.txt";
FileInfo fileInfo = new FileInfo(filePath);

上述示例中,我们通过传递文件路径作为参数来创建了一个新的FileInfo对象。

2. 获取文件属性信息

一旦创建了FileInfo对象,我们可以轻松获取文件的各种属性信息。以下是一些常用的属性:

  • Name:文件名(包括扩展名)
  • FullName:完整路径和文件名
  • Extension:文件扩展名
  • Length:文件大小(以字节为单位)
  • CreationTime:创建时间
  • LastWriteTime:上次修改时间
  • LastAccessTime:上次访问时间
csharp 复制代码
Console.WriteLine("文件名:" + fileInfo.Name);
Console.WriteLine("文件路径:" + fileInfo.FullName);
Console.WriteLine("文件大小:" + fileInfo.Length + " 字节");
Console.WriteLine("文件扩展名:" + fileInfo.Extension);
Console.WriteLine("文件创建时间:" + fileInfo.CreationTime);

3. 文件操作

FileInfo类提供了一些便捷的方法,用于进行文件操作。以下是几个常用的方法:

3.1 复制文件

使用CopyTo方法可以将文件复制到新的位置。需要传入目标路径作为参数。

csharp 复制代码
string destinationPath = "D:\\新建文件夹\\新建 文本文档.txt";
fileInfo.CopyTo(destinationPath);

3.2 移动文件

使用MoveTo方法可以将文件移动到新的位置。需要传入目标路径作为参数。

csharp 复制代码
string destinationPath = "D:\\新建文件夹2\\新建 文本文档.txt";
fileInfo.MoveTo(destinationPath);

3.3 删除文件

使用Delete方法可以删除文件。

csharp 复制代码
fileInfo.Delete();

4. 判断文件是否存在

我们可以使用Exists属性来判断文件是否存在。

csharp 复制代码
if (fileInfo.Exists)
{
    Console.WriteLine("文件存在!");
}
else
{
    Console.WriteLine("文件不存在!");
}

总结

本文详细介绍了C# FileInfo类的使用方法及常用操作,包括以下内容:

  1. 创建FileInfo对象
  2. 获取文件属性信息
  3. 文件操作:复制、移动和删除文件
  4. 判断文件是否存在

FileInfo类为C#编程中的文件操作提供了强大的功能。通过灵活运用FileInfo类的方法和属性,我们可以轻松地管理和操作文件。

相关推荐
~plus~14 分钟前
Harmony核心:动态方法修补与.NET游戏Mod开发
开发语言·jvm·经验分享·后端·程序人生·c#
htj1022 分钟前
C# 使用正则表达式
正则表达式·c#
~plus~23 分钟前
WPF八大法则:告别模态窗口卡顿
开发语言·经验分享·后端·程序人生·c#
就是有点傻32 分钟前
使用WPF的Microsoft.Xaml.Behaviors.Wpf中通用 UI 元素事件
c#
qq_297908011 小时前
C#报价系统陈列展示成本核算系统项目管理系统纸品非纸品报价软件
sqlserver·c#·.net·开源软件
CodeOfCC3 小时前
c语言 封装跨平台线程头文件
linux·c语言·windows
momo卡4 小时前
MinGW-w64的安装详细步骤(c_c++的编译器gcc、g++的windows版,win10、win11真实可用)
c语言·c++·windows
CoderIsArt10 小时前
C#中的CLR属性、依赖属性与附加属性
c#
IGP915 小时前
20250606-C#知识:委托和事件
开发语言·c#
Kookoos16 小时前
ABP VNext 与 Neo4j:构建基于图数据库的高效关系查询
数据库·c#·.net·neo4j·abp vnext