C# 常用檔案、資料夾程式碼範例大全

平時很常需要操作檔案、資料夾,但是有時候會搞混到底要使用 Path, File, Directory 等,於是將常使用到的紀錄下來

取得檔案資訊

    
string path = @"C:\Users\ruyut\Desktop\test.txt";

// 取得相對路徑 
string relativePath = Path.GetRelativePath(@"C:\Users\ruyut", path);
Console.WriteLine(relativePath); // Desktop\test.txt

// 確認檔案是否存在
bool fileExists = File.Exists(path);
Console.WriteLine(fileExists);

// 取得檔案絕對路徑
string filePath = Path.GetFullPath(path);
Console.WriteLine(filePath); // C:\Users\ruyut\Desktop\test.txt

// 取得檔案名稱
string fileName = Path.GetFileName(path);
Console.WriteLine(fileName); // test.txt

// 取得檔案副檔名
string fileExtension = Path.GetExtension(path);
Console.WriteLine(fileExtension); // .txt

// 取得檔案不含副檔名的檔名
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(path);
Console.WriteLine(fileNameWithoutExtension); // test

// 檔案建立日期
DateTime creationTime = File.GetCreationTime(path);
Console.WriteLine(creationTime); // 2022/10/27 上午 10:00:00

// 檔案最後存取日期
DateTime lastAccessTime = File.GetLastAccessTime(path);
Console.WriteLine(lastAccessTime); // 2022/10/27 上午 10:00:00

// 檔案最後修改日期
DateTime lastWriteTime = File.GetLastWriteTime(path);
Console.WriteLine(lastWriteTime); // 2022/10/27 上午 10:00:00
    

檔案編輯

    
// 建立空檔案
if (!File.Exists(path)) File.Create(path);

// 最簡單的寫入檔案 (不適合大量內容)
File.WriteAllText(path, "Hello, World!");

// 最簡單以附加的方式寫入檔案
File.AppendAllText(path, "Hello, World!");

// 最簡單的讀取檔案 (不適合大量內容)
string content = File.ReadAllText(path);

    

資料夾

    

// 取得檔案所在的資料夾路徑
string? fileDirectory = Path.GetDirectoryName(path);
Console.WriteLine(fileDirectory); // C:\Users\ruyut\Desktop

// 確認資料夾是否存在
bool directoryExists = Directory.Exists(fileDirectory);

// 建立資料夾
Directory.CreateDirectory(fileDirectory);

// 取得資料夾下所有檔案
string[] files = Directory.GetFiles(fileDirectory);

// 取得資料夾下所有子資料夾
string[] directories = Directory.GetDirectories(fileDirectory);

    


參考資料:
Microsoft.Learn - Path Class
Microsoft.Learn - File Class
Microsoft.Learn - Directory Class

留言