LINUX.ORG.RU

Динамическая перекодировка cp1251<->KOI8r


0

0

Пожалуйста помогите. Необходимо в проге на С динамически производить перекодировку cp1251->KOI8r и обратно (возможно будут использоваться и другие CS). Как сделать? Может какие библиотеки есть ИЛИ ГДЕ? Если вопрос тупой - прошу прощения!

anonymous

Дык зачем же библиотеки?
Простое индексирование в таблице перекодировки:
koi_char=win2koi[win_char];

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

Yurchik
()

Наверное (скорее всего так и есть) я неправильно задал вопрос.

Енто-то понятно - но хотелось бы использовать как можнно более стандарный способ: Скажем есть какие-либо таблицы перекодировки в системе - их и использовать (либо какие-то косвенные данные). Т.е. не снабжать прогу своими таблицами (пусть даже в каких-то своих, внешних файлах), а брать эти таблицы из ... системы?!

anonymous
()

Это вряд ли... Одно дело locale, другое перекодирование. Но не стоит ли подождать Уникода например? Сейчас ведь грядут перемены.

anonymous
()

А долго ждать?

anonymous
()

Стоит посмотреть по сайтам дистрибутивов. По крайней мере...

anonymous
()

Я не фанат Qt, но QString основан на unicode
и может перекодироваться из/в koi8r/cp1251/..... 

yaroslav_v
()

Если хочешь, могу прислать текст перекодировщика
koi8r<->dos-866<->win-cp_1251 

yaroslav_v
()
25 января 2001 г.

есть вызов iconv

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.