Использование греческой кодовой страницы (1253) на турецком языке (1254) Компьютер - PullRequest
2 голосов
/ 08 октября 2019

В моем серверном приложении я пытаюсь проанализировать свои ответы с помощью UTF-8 на греческом языке, но, поскольку мой локальный набор символов равен 1254, я не могу найти каждый греческий символ.

Я попытался установить локальные темы как 1253, но это не сработало. Я хочу знать, есть ли способ конвертировать строку UTF-8 в windows.1253 (греческий) в моем компьютере с набором символов 1254 только для определенных ответов клиента.

Кстати, когда я изменяю свои региональные настройки на греческий, у меня нет никаких проблем, но я не могу следовать этому решению, потому что мои локальные настройки должны оставаться в качестве окон.

Обновление на основе комментариев:

Это ответ, который я получаю в UTF-8

"Valuation_Date":"10\/10\/2019 12:00:00 πμ"

Вот как мое приложение получает его

"Valuation_Date":"10\/10\/2019 12:00:00 πμ"

Код, через который эта строка проходит после своего Unicodewstring

std::string returnGivenCodePage(const std::wstring &unicodeString)
{
    std::string result;
    int numberOfBytesNeeded = WideCharToMultiByte(1253, WC_NO_BEST_FIT_CHARS,
            unicodeString.c_str(), (int)unicodeString.length(),
            NULL, 0, NULL, NULL);
    int numberOfBytesWritten = WideCharToMultiByte(1253, WC_NO_BEST_FIT_CHARS,
                unicodeString.c_str(), (int)unicodeString.length(),
                &result[0], numberOfBytesNeeded, NULL, NULL);
    return result;
}

и, наконец, это версия после того, как я изменил ее на SystemWindowsAnsi, которая 1253 (греческий язык), но мой локальный по умолчанию 1254 (турецкий)

<ValuationDate>10/10/2019 12:00:00 ğì</ValuationDate>

И конечноэто лишь малая часть действительно большого ответа.

На самом деле я хочу преобразовать строку UTF-8 в windows 1253 (греческий) и после обработки на нем снова преобразовать строку UTF-8, мой текущий локальный по умолчанию - 1254(Турецкий).

Если вам нужна дополнительная информация, я буду рад поделиться еще.

...