0

对于我缺乏基本的 VB.net 知识,我深表歉意,但我希望使用相当于 %systemdrive% 的驱动器来查找包含 Windows 的驱动器,以检查 VB.net 中的现有目录 - 所以我有以下内容。

Dim systemPath As String = Mid(Environment.GetFolderPath(Environment.SpecialFolder.System), 1, 3)
        If Not Directory.Exists("'systemPath'\MyFolder") Then
            Directory.CreateDirectory("'systemPath'\MyFolder")
        End If

有人可以帮助在目录查询中使用 systemPath 字符串吗?谢谢你。

4

2 回答 2

1

那么你应该写

Dim systemPath As String = Mid(Environment.GetFolderPath(Environment.SpecialFolder.System), 1, 3)
If Not Directory.Exists(Path.Combine(systemPath, "MyFolder")) Then
        Directory.CreateDirectory(Path.Combine(systemPath, "MyFolder"))
End If

您可以使用 Environment.GetEnvironmentVariable 获取名为 %SYSTEMDRIVE% 的环境变量,但随后应手动将获得的结果与当前目录分隔符 char ( "\") 组合,因为我还没有找到任何方法来说服 Path.Combine 仅使用系统驱动器 (IE C:)

Dim sysDrive = Environment.GetEnvironmentVariable("SystemDrive") 
Dim myPath = sysDrive & Path.DirectorySeparatorChar & "MyFolder" 
于 2013-10-02T13:00:53.737 回答
0

IO.Path 有应该使用恕我直言的方法

    Dim sysDrive As String = Environment.GetEnvironmentVariable("SystemDrive") & IO.Path.DirectorySeparatorChar
    Dim myPath As String = IO.Path.Combine(sysDrive, "FolderName")
于 2013-10-02T13:19:58.497 回答