Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpFsRp 231 of 509 menu
◀ ▶

Относительный путь в C#

Относительный путь удобен в логах и интерфейсе: пользователь видит "cfg/app.ini" вместо длинного абсолютного адреса.

Метод сравнивает строки путей. Каталоги могут отсутствовать на диске в момент вызова.

Зададим каталог-базу и путь к файлу внутри нее. Базу заранее делают абсолютной через Path.GetFullPath. Сам файл на диске не создается. В консоли ожидается "cfg/app.ini" или тот же путь с разделителями ОС:

string baseDir = Path.GetFullPath(Path.Combine(Path.GetTempPath(), "rel-eta")); Directory.CreateDirectory(baseDir); string target = Path.Combine(baseDir, "cfg", "app.ini"); string rel = Path.GetRelativePath(baseDir, target); Console.WriteLine(rel); Directory.Delete(baseDir, true);

Для каталога projects и файла projects/src/Main.cs выведите короткую цепочку от базы.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить