C#使用FileInfo和DirectoryInfo類來(lái)執(zhí)行文件和文件夾操作
System.IO.FileInfo 和 System.IO.DirectoryInfo 是C#中用于操作文件和文件夾的類,它們提供了許多有用的方法和屬性來(lái)管理文件和文件夾。
System.IO.FileInfo:
FileInfo 類用于操作單個(gè)文件的信息和內(nèi)容。以下是一些常用的方法和屬性:
Exists:檢查文件是否存在。FullName:獲取文件的完整路徑。Name:獲取文件的名稱(包括擴(kuò)展名)。Length:獲取文件的大?。ㄒ宰止?jié)為單位)。CreationTime、LastAccessTime、LastWriteTime:分別獲取文件的創(chuàng)建時(shí)間、最后訪問(wèn)時(shí)間和最后寫入時(shí)間。CopyTo:將文件復(fù)制到指定的目標(biāo)路徑。MoveTo:將文件移動(dòng)到指定的目標(biāo)路徑。Delete:刪除文件。
System.IO.DirectoryInfo:
DirectoryInfo 類用于操作文件夾的信息和內(nèi)容。以下是一些常用的方法和屬性:
Exists:檢查文件夾是否存在。FullName:獲取文件夾的完整路徑。Name:獲取文件夾的名稱。CreationTime、LastAccessTime、LastWriteTime:分別獲取文件夾的創(chuàng)建時(shí)間、最后訪問(wèn)時(shí)間和最后寫入時(shí)間。GetFiles:獲取文件夾中的文件列表。GetDirectories:獲取文件夾中的子文件夾列表。CreateSubdirectory:在當(dāng)前文件夾下創(chuàng)建子文件夾。MoveTo:將文件夾移動(dòng)到指定的目標(biāo)路徑。Delete:刪除文件夾。
這些類提供了方便的方法來(lái)處理文件和文件夾的操作,可以根據(jù)具體的需求來(lái)選擇使用 FileInfo 或 DirectoryInfo 。使用這些類可以更加靈活地進(jìn)行文件和文件夾的管理和操作。
使用 FileInfo:
using System;
using System.IO;
class Program
{
static void Main()
{
string filePath = @"C:\example\sample.txt";
// 創(chuàng)建 FileInfo 對(duì)象
FileInfo fileInfo = new FileInfo(filePath);
// 檢查文件是否存在
if (fileInfo.Exists)
{
Console.WriteLine($"File name: {fileInfo.Name}");
Console.WriteLine($"File size: {fileInfo.Length} bytes");
Console.WriteLine($"Creation time: {fileInfo.CreationTime}");
Console.WriteLine($"Last access time: {fileInfo.LastAccessTime}");
Console.WriteLine($"Last write time: {fileInfo.LastWriteTime}");
// 復(fù)制文件到新路徑
string newFilePath = @"C:\newfolder\sample.txt";
fileInfo.CopyTo(newFilePath, true); // 第二個(gè)參數(shù)表示是否覆蓋目標(biāo)文件
// 移動(dòng)文件到新路徑
string movedFilePath = @"D:\movedfolder\sample.txt";
fileInfo.MoveTo(movedFilePath);
// 刪除文件
fileInfo.Delete();
}
else
{
Console.WriteLine("File does not exist.");
}
}
}使用 DirectoryInfo:
using System;
using System.IO;
class Program
{
static void Main()
{
string folderPath = @"C:\example\folder";
// 創(chuàng)建 DirectoryInfo 對(duì)象
DirectoryInfo directoryInfo = new DirectoryInfo(folderPath);
// 檢查文件夾是否存在
if (directoryInfo.Exists)
{
Console.WriteLine($"Folder name: {directoryInfo.Name}");
Console.WriteLine($"Creation time: {directoryInfo.CreationTime}");
Console.WriteLine($"Last access time: {directoryInfo.LastAccessTime}");
Console.WriteLine($"Last write time: {directoryInfo.LastWriteTime}");
// 獲取文件夾中的文件列表
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files)
{
Console.WriteLine($"File: {file.Name}, Size: {file.Length} bytes");
}
// 獲取文件夾中的子文件夾列表
DirectoryInfo[] subdirectories = directoryInfo.GetDirectories();
foreach (DirectoryInfo subdirectory in subdirectories)
{
Console.WriteLine($"Subfolder: {subdirectory.Name}");
}
// 創(chuàng)建子文件夾
string newSubfolderPath = Path.Combine(folderPath, "newsubfolder");
DirectoryInfo newSubdirectory = directoryInfo.CreateSubdirectory("newsubfolder");
// 移動(dòng)文件夾到新路徑
string movedFolderPath = @"D:\movedfolder";
directoryInfo.MoveTo(movedFolderPath);
// 刪除文件夾
directoryInfo.Delete(true); // 第一個(gè)參數(shù)表示是否刪除包括子文件和子文件夾
}
else
{
Console.WriteLine("Folder does not exist.");
}
}
}到此這篇關(guān)于C#使用FileInfo和DirectoryInfo類來(lái)執(zhí)行文件和文件夾操作的文章就介紹到這了,更多相關(guān)C#使用FileInfo和DirectoryInfo類內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C# 如何使用OpcUaHelper讀寫OPC服務(wù)器
這篇文章給大家介紹C# 如何使用OpcUaHelper讀寫OPC服務(wù)器,本文通過(guò)圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧2023-12-12
c# 實(shí)現(xiàn)文件上傳下載功能的實(shí)例代碼
這篇文章主要介紹了如何用c# 實(shí)現(xiàn)文件上傳下載功能,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07
C# Oracle數(shù)據(jù)庫(kù)操作類實(shí)例詳解
這篇文章主要介紹了C# Oracle數(shù)據(jù)庫(kù)操作類實(shí)例,進(jìn)行數(shù)據(jù)庫(kù)操作時(shí)很有實(shí)用價(jià)值,需要的朋友可以參考下2014-07-07
解析StreamReader與文件亂碼問(wèn)題的解決方法
本篇文章是對(duì)StreamReader與文件亂碼問(wèn)題的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
C#實(shí)現(xiàn)文件與Base64的相互轉(zhuǎn)換
本文主要介紹了C#實(shí)現(xiàn)文件與Base64的相互轉(zhuǎn)換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
基于WPF實(shí)現(xiàn)路徑圖標(biāo)控件
這篇文章主要介紹了如何利用WPF實(shí)現(xiàn)路徑圖標(biāo)控件,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定幫助,需要的小伙伴可以參考一下2023-07-07
詳解C#開發(fā)Android應(yīng)用程序的流程
在本篇文章里小編給大家分享了關(guān)于C#開發(fā)Android應(yīng)用程序的流程和相關(guān)技巧,需要的朋友們跟著學(xué)習(xí)下。2019-03-03

