【C#】【入門練習】寫出一個簡易的垃圾清除程式
前言
近期開始學一點C#,想當然有點應用學比較有趣,
接下來會嘗試把之前Python寫的一些code轉成C#當成學習筆記。
如果覺得有趣還請幫我分享,首先帶來垃圾的小程式,幫助電腦不卡卡吧。
進入教學前,不要忘了訂閱按讚分享唷!
部落格教學網站:
https://pixnashpython.pixnet.net/blog
想要即時訂閱最新文章:
https://forms.gle/MdXmiF2HgHhNChL46
訂閱Telegram來接收最新資訊:
https://t.me/joinchat/VUUuDt67Uq5l6CIQ
一、關鍵方法及程式碼
(1) using System.Threading
中可以使用 Thread.Sleep(1000); // 暫停1秒
(2) $@
$@"C:\Users\{UserName}\AppData\Local\Temp";
加上@字串會直接被編譯不會受到換行符號等等的影響
加上$可以在字串中使用{}裡面可以放變數
(3) 常用的方法(記得 using System.IO)
File.Delete(file); /// 可以刪除資料(file放檔案路徑)
string[] files = Directory.GetFiles(pTempDir); /// 取得路徑下所有檔案
string UserName = Environment.UserName; /// 取得使用者名稱
(4) C#中最簡單的try...catch...
try
{
File.Delete(file);
Console.WriteLine($@"O 成功刪除 {Path.GetFileName(file)}");
nCountO += 1;
}
catch (Exception e)
{
Console.WriteLine($@"X 無法刪除 {Path.GetFileName(file)}");
nCountX += 1;
}
(5) C#中的迴圈之一
foreach (var file in files){.........}
跟python很像可以直接遊歷[]中的每個變數
完整程式碼(複製貼上用即可)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.IO;
namespace TempClearKing
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("歡迎使用暫存清除者");
Console.WriteLine
(
"--------------------------------------------------------------------------- \n" +
"開發: Nash \n" +
"說明: 清除資料夾暫存區裡面的垃圾 \n" +
"備註: 等待1秒後自動開始清除 \n" +
"--------------------------------------------------------------------------- "
);
Thread.Sleep(1000); // 暫停1秒
/// 使用者名稱、路徑
string UserName = Environment.UserName;
string pTempDir = $@"C:\Users\{UserName}\AppData\Local\Temp";
/// 垃圾資料
string[] files = Directory.GetFiles(pTempDir);
int nCountO = 0;
int nCountX = 0;
foreach (var file in files)
{
try
{
File.Delete(file);
Console.WriteLine($@"O 成功刪除 {Path.GetFileName(file)}");
nCountO += 1;
}
catch (Exception e)
{
Console.WriteLine($@"X 無法刪除 {Path.GetFileName(file)}");
nCountX += 1;
}
}
Console.WriteLine
(
"--------------------------------------------------------------------------- \n" +
$"成功刪除 { nCountO.ToString()} 筆暫存資料 | { nCountX.ToString()} 筆還在使用中無法刪除 \n" +
"--------------------------------------------------------------------------- "
);
Thread.Sleep(2000); // 暫停2秒
}
}
}
二、後記
詳細的原理很簡單,大家可以看這篇:
【Windows】清理暫存在電腦裡的垃圾:win10 win7加快電腦速度的萬用方法
部落格教學網站:
https://pixnashpython.pixnet.net/blog
想要即時訂閱最新文章:
https://forms.gle/MdXmiF2HgHhNChL46
訂閱Telegram來接收最新資訊:
https://t.me/joinchat/VUUuDt67Uq5l6CIQ