Чтобы установить корневую папку, в которой вы можете сохранить файл, вам нужно указать направление без корневого каталога, а затем использовать метод Combine()
из класса Path
, содержащегося в System.IO
.
Чтобы получить все диски, вы должны использовать класс DriveInfo
содержится в System.IO
пространстве имен и их атрибуте Name
, чтобы получить
корневой каталог.
Например:
using System.IO;
...
...
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach(DriveInfo x in allDrives)
{
Console.WriteLine(x.Name);
}
// Console: "C:\"
// Console: "D:\"
И затем вы можете объединить путь к корневому каталогу с путем к файлу следующим образом:
Path.Combine(rootPath, filePathWithoutRoot);
Чтобы получить корневой каталог пути, вы можете использовать метод GetPathRoot()
из Path
класса, который содержится в пространстве имен System.IO
. Этот метод возвращает вам корневой каталог из пути, переданного как аргумент string
.
На этой странице Microsoft MSDN вы можете получить дополнительную информацию и
этот пример того, как его использовать:
string path = @"\mydir\";
string fileName = "myfile.ext";
string fullPath = @"C:\mydir\myfile.ext";
string pathRoot;
pathRoot = Path.GetPathRoot(fullPath); Console.WriteLine("GetPathRoot('{0}') returns '{1}'", fullPath, pathRoot);
// This code produces output similar to the following:
//
// GetPathRoot('C:\mydir\myfile.ext') returns 'C:\'
На этой странице сайта Microsoft MSDN вы можете получить дополнительную информацию об этом:
Метод Path.GetPathRoot (String)