У меня есть проблема, что в C ++ с Visual Studio 2017 я не могу открыть файл, который имеет не ASCII-символ в пути.
Давайте предположим, что у меня есть путь d: \ üab и файл test.txt там.
FUNDIC FOPEN_S ()
FUNDICS FUNDICS ()
FUNDICES aS). _wfopen_s () , который поддерживает Unicode. Он также не удается, когда я кодирую символ «ü» как UTF-8 с значениями HEX 0xc3 0xbc .
Все эти вызовы функций Fail:
FILE* pFile;
errno_t errFopen;
errFopen = fopen_s(&pFile, "D:\\üab\\test.txt","r");
// Fails with errFopen == 2
errFopen = _wfopen_s(&pFile, L"D:\\üab\\test.txt",L"r");
// Fails with errFopen == 2
errFopen = fopen_s(&pFile, "D:\\\xC3\xBCab\\test.txt","r");
// Compilation fails with compile error C2022.
errFopen = _wfopen_s(&pFile, L"D:\\\xC3\xBCab\\test.txt",L"r");
// Fails with errFopen == 2
Итак, как правильный способ открыть файлы в пути, который не имеет символов, не имеет символов?
Подробнее здесь: https://stackoverflow.com/questions/796 ... cter-fails