Я почти уверен, что нет функции для преобразования пути в локализованную форму, потому что когда вы видите большую картинку, это не имеет смысла.Если у вас есть перемещаемый профиль, может даже не быть папки «Пользователи» или «Benutzer», потому что она будет находиться там, где ее разместил администратор сервера.
Также возникает вопрос о том, как вы вызываете эту функцию.В качестве аргумента мы просто предположим, что вы называете его по умолчанию для английского языка США.Если вы скажете «дайте мне локализованную версию c: \ Users \ Bob на немецком языке», Vista и Windows 7 будут в порядке с этим, но XP не знает о папке «Users».Так что это сломалось бы без обратного патча, который вы не можете гарантировать.
Как правило, Microsoft рекомендует даже не беспокоиться о левой половине пути.Вместо этого вы просто должны использовать Environment.GetFolderPath()
и передать ему одно из перечислений SpecialFolder
.Все, что находится после специальной части папки, вы можете определить и создать, но это все.Ваш код должен сказать «относительно рабочего стола создайте папку с именем Bob».Все, что разрешается, никогда не должно храниться, потому что когда-нибудь этот путь может измениться,