Как получить домашний каталог пользователя с помощью C ++ 17 std :: filesystem? - PullRequest
2 голосов
/ 28 мая 2019

Мне нужно получить домашний каталог текущего пользователя, а затем добавить к нему пути к другим каталогам. Поскольку приложение кроссплатформенное, подход должен учитывать это. Я искал решение без успеха. Есть ли способ получить домашний каталог текущего пользователя, используя C ++ 17 std :: filesystem?

1 Ответ

3 голосов
/ 28 мая 2019

Нет.

Единственные специальные каталоги, которые вам передаются, - это каталог, подходящий для временных файлов, и текущий каталог.

Вам потребуется написать специальную оболочку ОС для получениядомашний каталог.Лично я считаю, что это плохая идея: скорее, у вас должна быть функция каталога «настройки приложения пользователя», функция каталога «документ пользователя» и т. Д. (В зависимости от потребностей вашего приложения).Сравнение этих каталогов с домашним каталогом зависит от ОС в зависимости от ОС.

По моему опыту, наличие API для хранения «набора свойств, подобного реестру» - хорошая идея (строка-строкакарта с кодом сериализации на значения, например).Он может отображаться на списки в MacOS, реестр в Windows и что-то еще в Linux.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...