乐于分享
好东西不私藏

桌面乱成狗?用C#小工具一键整理,5分钟搞定!

桌面乱成狗?用C#小工具一键整理,5分钟搞定!

😫 你的桌面是不是也这样:截图、PDF、压缩包、Word文档全堆在一起,找个文件翻半天?每次整理都说”等有空再弄”,结果一拖就是几个月……今天这篇教程,手把手带你用C#写一个桌面自动整理小工具,运行一下,所有文件自动按类型归类进文件夹!全程用通义灵码AI插件帮你生成代码,你只需要复制、粘贴、运行,零基础也能5分钟搞定!


😤 第一章:你是不是也有这种烦恼?

🎬 真实场景还原

小李是个上班族,每天下载报告、截图、压缩包,全往桌面一扔。时间一长,桌面密密麻麻全是文件,找个上周下载的PDF,得翻找五分钟。每周末”大扫除”一次,光整理桌面就要花20~30分钟,一年下来白白浪费超过24小时——相当于整整3个工作日!

💸 算笔账,看看你亏了多少

操作
手动耗时
自动化耗时
整理一次桌面
20~30分钟
3秒
一年52次
约26小时
约3分钟
找单个文件
平均3~5分钟
秒级定位

这还没算上那种”文件找不到、心态崩了”的隐性成本。

🤔 为什么手动整理不是长久之计?

手动整理就像扫地——今天扫干净,明天又乱了。根本原因是没有规则自动执行。咱们今天要做的,就是给电脑装上一套”自动规则”,文件一来就自动归位,永远不乱。


🎯 第二章:效果预览,先看看能做到什么

Before / After 对比

整理前的桌面:📁 桌面/├── 截图2024.png├── 项目报告.pdf├── 安装包.zip├── 会议记录.docx├── 背景音乐.mp3├── 演示视频.mp4└── ...(乱成一锅粥)整理后的桌面:📁 桌面/├── 📂 图片/        → png, jpg, gif, bmp├── 📂 文档/        → pdf, docx, xlsx, pptx, txt├── 📂 压缩包/      → zip, rar, 7z├── 📂 音乐/        → mp3, wav, flac├── 📂 视频/        → mp4, avi, mkv├── 📂 安装包/      → exe, msi└── 📂 其他/        → 其余所有文件

运行前:乱糟糟,找文件靠眼神;运行后:整整齐齐,一目了然。全程只需要3秒钟


🔧 第三章:环境准备(傻瓜式,5分钟搞定)

📦 需要安装的工具

工具一:VSCode(代码编辑器)

就是个写代码用的”记事本”,比记事本聪明一百倍。

  1. 1. 打开浏览器,访问 code.visualstudio.com
  2. 2. 点击蓝色大按钮 Download for Windows
  3. 3. 下载完双击安装,一路”下一步”就行
  4. 4. 安装完成后桌面会出现VSCode图标 ✅

工具二:.NET 10 SDK(让C#代码能运行的环境

相当于让电脑”听懂”C#语言的翻译官

  1. 1. 访问 dotnet.microsoft.com
  2. 2. 选择 .NET 10,点击 Download .NET SDK
  3. 3. 下载完双击安装,一路”下一步”
  4. 4. 安装完后,按 Win+R,输入 cmd,回车,输入:
dotnet --version

如果显示 10.x.x 这样的数字,说明安装成功 ✅

工具三:通义灵码插件(AI写代码助手)

这才是今天的主角!有了它,代码不用自己写,告诉AI你想干啥,它帮你生成!

  1. 1. 打开VSCode,左侧找到扩展图标(四个小方块的图标)
  2. 2. 搜索框输入:通义灵码
  3. 3. 找到阿里云出品的 TONGYI Lingma,点击 安装
  4. 4. 安装完左侧会出现灵码图标,点击登录阿里云账号(免费注册)✅

🤖 第四章:用通义灵码AI生成代码(重头戏!)

💬 第一步:打开通义灵码,输入提示词

打开VSCode,点击左侧灵码图标,进入AI对话框

把下面这段话原封不动复制进去,发送给AI:

请帮我用C# .NET 10写一个桌面文件自动整理工具,要求:1. 直接运行.cs文件(使用dotnet-script或顶级语句)2. 自动扫描Windows桌面上的所有文件3. 按以下类型自动分类移动到对应子文件夹:   - 图片:png, jpg, jpeg, gif, bmp, webp   - 文档:pdf, docx, doc, xlsx, xls, pptx, ppt, txt   - 压缩包:zip, rar, 7z, tar, gz   - 音乐:mp3, wav, flac, aac   - 视频:mp4, avi, mkv, mov, wmv   - 安装包:exe, msi   - 其他:以上未包含的文件4. 如果目标文件夹不存在,自动创建5. 如果同名文件已存在,自动重命名避免覆盖6. 每次移动文件后,在控制台打印移动记录7. 整理完成后显示汇总统计(各类型移动了多少文件)8. 每一行代码都要有中文注释

💡 第二步:AI生成代码,复制出来

通义灵码会给你生成完整代码。下面是AI生成的标准版本(可直接使用):

// 引入必要的命名空间用于文件操作和集合处理using System;using System.IO;using System.Collections.Generic;using System.Linq;// 定义文件类型分类字典,将扩展名映射到对应文件夹名称var fileCategories = new Dictionary<stringstring>{// 图片类型文件扩展名映射到"图片"文件夹    { "png""图片" }, { "jpg""图片" }, { "jpeg""图片" },    { "gif""图片" }, { "bmp""图片" }, { "webp""图片" },// 文档类型文件扩展名映射到"文档"文件夹    { "pdf""文档" }, { "docx""文档" }, { "doc""文档" },    { "xlsx""文档" }, { "xls""文档" }, { "pptx""文档" },    { "ppt""文档" }, { "txt""文档" },// 压缩包类型文件扩展名映射到"压缩包"文件夹    { "zip""压缩包" }, { "rar""压缩包" }, { "7z""压缩包" },    { "tar""压缩包" }, { "gz""压缩包" },// 音乐类型文件扩展名映射到"音乐"文件夹    { "mp3""音乐" }, { "wav""音乐" }, { "flac""音乐" }, { "aac""音乐" },// 视频类型文件扩展名映射到"视频"文件夹    { "mp4""视频" }, { "avi""视频" }, { "mkv""视频" },    { "mov""视频" }, { "wmv""视频" },// 安装包类型文件扩展名映射到"安装包"文件夹    { "exe""安装包" }, { "msi""安装包" }};// 获取当前用户的桌面路径string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);// 创建统计字典用于记录各类文件移动数量var statistics = new Dictionary<stringint>();// 初始化所有分类的统计计数为 0foreach (var category in fileCategories.Values.Distinct()){    statistics[category] = 0;}// 初始化"其他"分类的统计计数为 0statistics["其他"] = 0;// 输出桌面整理工具启动信息Console.WriteLine("=== 桌面文件自动整理工具 ===");// 输出当前桌面路径信息Console.WriteLine($"桌面路径:{desktopPath}");Console.WriteLine();// 获取桌面上所有文件(不包括子文件夹)var files = Directory.GetFiles(desktopPath);// 遍历桌面上的每个文件foreach (var filePath in files){// 获取文件名(包含扩展名)string fileName = Path.GetFileName(filePath);// 获取文件扩展名(去掉点号并转为小写)string extension = Path.GetExtension(filePath).TrimStart('.').ToLower();// 判断文件类型并确定目标文件夹string targetFolder;// 如果扩展名在分类字典中则使用对应分类if (fileCategories.ContainsKey(extension))    {        targetFolder = fileCategories[extension];    }else    {// 否则归类为"其他"        targetFolder = "其他";    }// 构建目标文件夹的完整路径string targetPath = Path.Combine(desktopPath, targetFolder);// 如果目标文件夹不存在则创建if (!Directory.Exists(targetPath))    {        Directory.CreateDirectory(targetPath);    }// 构建目标文件的完整路径string targetFilePath = Path.Combine(targetPath, fileName);// 如果目标位置已存在同名文件则需要重命名if (File.Exists(targetFilePath))    {// 获取文件名不含扩展名的部分string nameWithoutExt = Path.GetFileNameWithoutExtension(fileName);// 获取文件扩展名(包含点号)string ext = Path.GetExtension(fileName);// 初始化计数器用于生成唯一文件名int counter = 1;// 循环直到找到不存在的文件名while (File.Exists(targetFilePath))        {// 生成新文件名格式:原名_数字。扩展名string newFileName = $"{nameWithoutExt}_{counter}{ext}";// 更新目标文件路径            targetFilePath = Path.Combine(targetPath, newFileName);// 计数器加 1            counter++;        }    }// 移动文件到目标文件夹    File.Move(filePath, targetFilePath);// 在控制台输出文件移动记录    Console.WriteLine($"已移动:{fileName} -> {targetFolder}\\{Path.GetFileName(targetFilePath)}");// 更新对应分类的统计计数    statistics[targetFolder]++;}// 输出空行分隔Console.WriteLine();// 输出整理完成提示信息Console.WriteLine("=== 整理完成 ===");Console.WriteLine();// 输出汇总统计标题Console.WriteLine("=== 汇总统计 ===");// 遍历统计字典输出各类文件移动数量foreach (var stat in statistics){// 只输出有移动文件的分类if (stat.Value > 0)    {        Console.WriteLine($"{stat.Key}{stat.Value} 个文件");    }}// 输出总计移动文件数量Console.WriteLine();Console.WriteLine($"总计移动:{files.Length} 个文件");// 提示用户按任意键退出程序Console.WriteLine();Console.WriteLine("按任意键退出...");// 等待用户按键Console.ReadKey();

🚀 第五章:运行起来!手把手三步走

第一步:保存代码文件

  1. 1. 在桌面新建一个文件夹,命名为 桌面整理工具
  2. 2. 打开VSCode,把上面的代码全部复制进去
  3. 3. 按 Ctrl+S 保存,文件名输入:桌面整理.cs,保存到刚才创建的文件夹里

第二步:运行!

在命令行里输入(把路径换成你自己的):

dotnet .\桌面整理.cs

⚠️ 第六章:遇到问题别慌,这里都有答案

❓ 报错”dotnet-script未找到”

说明第二步的安装命令没成功。重新打开一个新的命令行窗口,再运行一次安装命令。如果还不行,重启电脑再试。

❓ 报错”路径不存在”

检查bat文件里的路径是否正确,用户名要换成你电脑实际的用户名。可以直接打开文件夹,在地址栏复制路径。

❓ 文件没有被移动

检查桌面上的文件是不是快捷方式(.lnk文件)。快捷方式不会被移动,这是正常的,避免破坏桌面图标。

❓ 权限不够,提示”拒绝访问”

右键点击 运行.bat,选择以管理员身份运行


🎨 第七章:想改成自己的需求?超简单!

💡 加入新的文件类型

在代码的 fileCategories 字典里,直接加一行:

"代码文件"new[] { ".py"".js"".html"".css"".java" } },

💡 整理指定文件夹而不是桌面

把这一行:

string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

改成:

string desktopPath = @"C:\Users\你的名字\Downloads"// 改成整理下载文件夹

💡 用通义灵码继续升级功能

在VSCode的灵码对话框里,你还可以继续问AI:

  • • "帮我加一个功能:整理前先备份桌面所有文件"
  • • "帮我加一个功能:自动生成整理日志,保存到txt文件"
  • • "帮我改成定时任务,每天早上9点自动运行"

AI会直接给你修改后的完整代码,继续复制粘贴就行!


✅ 总结:今天你学会了什么

你刚刚完成了一件了不起的事——用AI辅助编程,写出了一个真正能用的自动化小工具。具体收获是:用通义灵码把需求变成代码,不用自己从零写;用**.NET 10顶级语句**让C#文件可以直接运行,无需复杂项目配置;以及一个每次运行只要3秒、帮你省下每年几十小时的桌面整理神器。

🚀 现在就行动:别收藏吃灰,立刻打开VSCode,把代码复制进去,运行一次,看着桌面文件自动归类的那一刻,你会真实感受到”自动化”的爽感。

💬 你还有哪些重复性工作想自动化?留言告诉我,下期教程说不定就是为你量身定做的!遇到任何问题,评论区直接求助,我们一起搞定!

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 桌面乱成狗?用C#小工具一键整理,5分钟搞定!

猜你喜欢

  • 暂无文章