пишу кодировщик для мтк2/мтк5
для однобайтовой кодировки (koi8-r) все довольно просто
unsigned codir_char_toMtk5(const char &x)
{
switch(x)
{
case 'A':return(SI_2BYTE|65); case 'B':return(SI_2BYTE|66); case 'C':return(SI_2BYTE|67);
case 'D':return(SI_2BYTE|68); case 'E':return(SI_2BYTE|69); case 'F':return(SI_2BYTE|70);
...
case 'Д':return(SO_2BYTE|100); case 'Е':return(SO_2BYTE|101); case 'Ф':return(SO_2BYTE|102);
case 'Г':return(SO_2BYTE|103); case 'Х':return(SO_2BYTE|104); case 'И':return(SO_2BYTE|105);
...
}
}
и обратно
char decodir_fromMtk5(const char &x,const char ®)
{
switch(reg)
{
case(REG_MTK5_LAT): switch(x)//при REG_MTK5_LAT (латынь)
{
case 65:return 'A'; case 66:return 'B'; case 67:return 'C';
...
}
case(REG_MTK5_RUS): switch(x)//при REG_MTK5_RUS (кирилица)
{
case 64:return 'ю'; case 65:return 'а'; case 66:return 'б';
case 67:return 'ц'; case 68:return 'д'; case 69:return 'е';
...
}
}
а вот как сделать для utf8?
wchar_t в switch не засунешь, да и
wchar_t x;
if(x=='б')return 66;
не прокатывает.
Подскажите пожалуйста как сравнивать wchar_t?
Ответ на:
комментарий
от lester
Ответ на:
комментарий
от CL
Ответ на:
комментарий
от CL
Ответ на:
комментарий
от lester
Ответ на:
комментарий
от CL
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Использование enum в switch (2004)
- Форум Asterisk и внутренняя переадресация (2016)
- Форум Как выбирается кодек в SDP (2020)
- Форум Максимальное колличество MPLS POP меток на оборудовании (2017)
- Форум жесткий диск 4 терабайта не создается (2020)
- Форум Wchar_t не читает русские символы (2018)
- Форум wchar_t (2011)
- Форум wchar_t (2013)
- Форум Не понимаю, почему модуль NGINX падает. Исходник. (2010)
- Форум rgb.mit.txt (2021)