1

我已经在我的机器的 E 驱动器中创建了一个目录名称“DbInventory”现在在我的 c# 应用程序中,我想获取这个目录的完整路径(DbInventory)。

下面我提到我使用的代码

DirectoryInfo info = new DirectoryInfo("DbInventory");
string currentDirectoryName = info.FullName;

但是这个 currentDirectoryName 字符串返回 C 驱动器中的文件位置。

4

4 回答 4

2

首先,DirectoryInfo构造函数将参数作为具有完整路径的字符串。当您只写一个文件夹名称时,它会获取 Visual Studio 的默认路径的位置,该路径在您的C:/驱动器和Bin/Debug文件夹下最常见。

所以在我的电脑里,你的currentDirectoryName意志是;

C:\Users\N53458\Documents\Visual Studio 2008\Projects\1\1\bin\Debug\DbInventory

如果要获取完整路径名,可以使用Path.GetDirectoryName方法;

返回指定路径字符串的目录信息。

于 2013-07-18T06:41:44.767 回答
1

您正在使用

new DirectoryInfo("DbInventory");

默认驱动器 (C) 上的新目录。看看: MSDN

如果要获取驱动器 E 上已创建的目录信息对象,则必须指定路径。

于 2013-07-18T06:36:05.587 回答
1

您可以使用Path.GetDirectoryName

DirectoryInfo info = new DirectoryInfo("DbInventory");
string currentDirectoryName = info.FullName;
string directoryPath = Path.GetDirectoryName(path);
于 2013-07-18T06:36:29.123 回答
0

尝试 server.mappath

string currentDirectoryName =Server.MapPath(info.FullName);

希望这对你有用

于 2013-07-18T06:36:03.090 回答