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

如何获取非根目录的第一个文件夹路径?

问题原因与解决方法

Path.GetPathRoot方法的作用是获取路径的根目录,在Windows系统中就是盘符加根斜杠(比如d:\),这是方法的设计逻辑,所以它本来就不会返回d:\test1这种一级子目录路径。

要获取目标路径d:\test1,可以用以下两种方法:

方法1:使用Path.GetDirectoryName

这个方法会返回指定路径的父目录路径,无论路径指向目录还是文件都适用:

var targetPath = Path.GetDirectoryName(textBoxPath.Text);
// 输入"d:\test1\test2"时,返回"d:\test1"

方法2:使用Directory.GetParent

通过获取路径的父目录对象,再提取其完整路径:

var parentDirectory = Directory.GetParent(textBoxPath.Text);
if (parentDirectory != null)
{
    var targetPath = parentDirectory.FullName;
    // 输入"d:\test1\test2"时,得到"d:\test1"
}

注意:如果输入的路径本身就是根目录(比如d:\),这两个方法都会返回null,使用时需要做空值判断。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 22:12:06