Проверьте, что имя файла является допустимым именем окон

Я хочу проверить, является ли моя строка допустимым путем к файлу окон. Я искал вокруг, и кажется, что нет никакого надежного метода, чтобы сделать это. Также я проверил библиотеку файловой системы повышения, и никакая очевидная функция не существует, чтобы сделать эту проверку, возможно, что-то как is_valid_windows_name

6
задан user152508 21 June 2010 в 13:58
поделиться

2 ответа

Я не верю, что для этого существует стандартный API C ++.

Обратите внимание, что Windows API позволяет использовать больше имен файлов, чем Windows Shell (имена файлов, которые пользователь может использовать в проводнике windws).

Вам следует взглянуть на api оболочки Windows.

Другая возможность - использовать метод проб и ошибок, таким образом, вы действительно независимы от текущей файловой системы.

Самый простой способ - запретить

\ / <> | ":? *

и все будет в порядке.

1
ответ дан 17 December 2019 в 18:10
поделиться

Вы можете использовать функцию _splitpath () и анализировать вывод (на основе этого вы можете легко сказать, действителен ваш путь или нет).

См. MSDN для получения дополнительной информации.

Обратите внимание, что эта функция зависит от Windows.

1
ответ дан 17 December 2019 в 18:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: