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

如何在.NET中正确解析包含特殊文件夹占位符的文件路径

.NET 本身已提供原生的环境变量路径解析方法,不需要手动实现正则替换逻辑。

你可以直接调用Environment.ExpandEnvironmentVariables()方法,该方法会自动将路径中所有符合%变量名%格式的系统/用户环境变量占位符替换为对应的实际值,行为和Windows资源管理器的路径解析逻辑完全一致。

使用示例如下:

var rawPath = @"%UserProfile%/Documents/foo";
// 调用内置方法完成占位符解析
var resolvedPath = Environment.ExpandEnvironmentVariables(rawPath);
// 解析后的路径可直接传入DirectoryInfo构造函数
var dirInfo = new DirectoryInfo(resolvedPath);

补充说明

  • 若路径中的占位符对应的环境变量不存在,方法会原封不动保留该段%xxx%文本,不会抛出异常。
  • 你当前手写的正则替换方案仅支持匹配Environment.SpecialFolder枚举范围内的占位符,原生方法的支持范围更广泛,也不需要额外维护正则逻辑,更符合.NET官方最佳实践。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 16:00:03