как кодировать массив символов с помощью кодовой страницы с помощью c - PullRequest
0 голосов
/ 02 января 2019

У меня есть массив символов в C, который я читаю из двоичного файла, и я хочу кодировать с помощью специальной кодовой страницы

Например, я хочу кодировать этот символ * с помощью кодовой страницы 1252

char myArray[] = { 0xa0, 0x90, 0x91, 0x96, 0xb0 };

результат должен быть { 0xa0, 0x90, 0x3F, 0x3F, 0xb0 }

Я знаю, что widechartomultibyte может сделать это, но для этого нужно получить широкий символ (например, 00a0,0090,0091,0096,00b0), и у меня есть только символ *, а не широкий символ.

Возможно, я могу преобразовать c * в широкий символ с помощью MultiByteToWideChar, а затем использовать widechartomultibyte, но когда я это сделаю, это повредит кодировку, и это выглядит странно для преобразования дважды.

Таккак я могу кодировать char * со специальной кодовой страницей в c с Windows?

...