承接上篇文章,本文將詳細說明如何使用 Visual C# 實作清空回收站的核心邏輯,包括檔案刪除機制、MessageBox 互動視窗的使用,以及完整的程式碼編譯與執行示範。
當確認 C:\Recycled 目錄不為空時,程式需遍歷目錄中所有檔案並逐一刪除。這裡會用到兩個關鍵的 .NET 類別:
使用 Directory.GetFiles() 取得目錄下所有檔案的完整路徑集合,再搭配 foreach 迴圈逐一處理:
foreach (string filePath in Directory.GetFiles(@"c:\recycled"))
{
File.Delete(filePath);
}
在執行刪除前,透過 MessageBox.Show() 顯示確認對話框,包含「是/否」按鈕與問號圖示:
DialogResult result = MessageBox.Show(
"是否確定清空回收站?",
"垃圾處理確認",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question
);
if (result == DialogResult.Yes)
{
// 執行刪除邏輯
}
注意:DialogResult.Yes 的整數值為 6,舊版程式碼常直接比較 (int)result == 6,建議使用列舉值提高可讀性。
using System.IO;
using System.Windows.Forms;
class Recycle
{
public static void Main()
{
int fileCount = 0;
// 計算回收站檔案數量
foreach (string file in Directory.GetFiles(@"c:\recycled"))
{
fileCount++;
}
if (fileCount > 0)
{
DialogResult result = MessageBox.Show(
"是否確定?",
"垃圾處理!",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question
);
if (result == DialogResult.Yes)
{
foreach (string filePath in Directory.GetFiles(@"c:\recycled"))
{
File.Delete(filePath);
}
}
}
}
}
使用命令列編譯器 csc.exe 編譯為 Windows 執行檔:
csc /t:winexe /r:system.dll /r:system.Windows.forms.dll recycled.cs
/t:winexe:指定輸出為 Windows 應用程式(無主控台視窗)/r::參考必要的組件
執行後將顯示確認對話框,點選「是」即清空回收站所有檔案。
本文透過實際軟體開發流程,展示了 Visual C# 在檔案處理方面的強大功能。憑藉 .NET Framework SDK 的支援,過去難以處理的檔案系統操作變得相對簡單。這正是 Visual C# 成為新一代主流開發語言的關鍵原因——它讓原本不可能的任務成為可能,將複雜度封裝在優雅的 API 之後。