You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#控制台应用删除文件夹:用Debug目录路径替代绝对路径

解决C#控制台应用路径适配问题

要让程序在任意设备上运行,需把固定绝对路径替换为基于程序启动目录的动态路径,具体修改方案如下:

核心思路

利用C#内置API获取程序运行时的基础目录,再通过Path.Combine拼接目标子路径Cache\EBWebView,彻底摆脱硬编码路径的适配限制。

修改后的完整代码

Console.ForegroundColor = ConsoleColor.Magenta;
Console.Title = "Cachecleaner";
Thread.Sleep(2000);

// 动态获取程序运行目录,拼接目标缓存路径
string baseDir = AppDomain.CurrentDomain.BaseDirectory;
string targetPath = Path.Combine(baseDir, "Cache", "EBWebView");
DirectoryInfo Cache = new DirectoryInfo(targetPath);

foreach (FileInfo files in Cache.GetFiles()) 
{ 
    files.Delete();
    Console.WriteLine("Files Deleted");
}
foreach(DirectoryInfo folders in Cache.GetDirectories())
{
    folders.Delete(true);
    Console.WriteLine("Folders Deleted");
}

关键API说明

  • AppDomain.CurrentDomain.BaseDirectory:获取当前程序集所在的目录(即Debug/Release输出目录),是最稳定的程序启动路径获取方式。
  • Path.Combine:自动适配不同系统的路径分隔符(Windows用\,Linux用/),避免手动拼接路径出现格式错误。

额外优化建议

可添加目录存在性判断,避免目录不存在时抛出异常:

if (Cache.Exists)
{
    // 执行删除文件和文件夹的逻辑
}
else
{
    Console.WriteLine("目标缓存目录不存在");
}

内容的提问来源于stack exchange,提问作者BA55H4XQR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 22:22:04