Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.09.2022, 16:37   #11
Алексей1153
фрилансер
Форумчанин
 
Регистрация: 11.10.2019
Сообщений: 947
По умолчанию

было больно смотреть на этот "код", поэтому вот современный вариант

Код:
std::string Utf8_to_cp1251(const std::string_view str)
{
	const auto countW=                ::MultiByteToWideChar(CP_UTF8,0,str.data(),str.size(),0,0);
	std::wstring UTF16(countW,L'\0'); ::MultiByteToWideChar(CP_UTF8,0,str.data(),str.size(),UTF16.data(),UTF16.size());

	const auto countA =             ::WideCharToMultiByte(1251,0,UTF16.data(),UTF16.size(),0,0,0,0);
	std::string cp1251(countA,'\0');::WideCharToMultiByte(1251,0,UTF16.data(),UTF16.size(),cp1251.data(),cp1251.size(),0,0);

	return cp1251;
}
Код:
auto A=Utf8_to_cp1251(u8"Текст");
Алексей1153 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Первести в кодировку Win-1251 Shouldercannon Общие вопросы Delphi 4 01.08.2010 14:55
php перекодировка из utf-8 в windows-1251 world12_tk PHP 3 25.04.2010 22:55
UTF-8 в Windows-1251 - нужна функция motorway PHP 3 04.07.2009 15:28
Wordpress. Поменять кодировку utf-8 на windows 1251 GarantR Фриланс 4 08.02.2009 12:09