LINUX.ORG.RU

> Есть ли библиотека на C с помощью которой можно преобразовать в программе строку-кирилицу из utf-8 в koi8-r или cp866 ?

Надеюсь, что нет, ибо работы на десять минут.

damnemall
()

man 3 iconv

anonymous
()

libicu, но она немаленькая

aho
()

проще всего через libiconv.. но она здоровая зараза, и имеет проблемы с лицензионной чистотой (LGPL, что делает ее непригодной, скажем, для embedded).

если надо без libiconv - то можно соорудить велосипед, и сначала преобразовать в cp1251 (~30 строчек кода на C), а потом в cp866 или koi8r по табличке (это тривиально)

waker ★★★★★
()
Ответ на: комментарий от sergej

потому что не на всех embedded есть возможность соблюдать lgpl. на одних нет динамической линковки, на других нет возможности перепрошивки, и тп.. я уж молчу о проприетарщине (ТС не уточнял опенсурс ли у него).

waker ★★★★★
()
Ответ на: комментарий от waker

на других нет возможности перепрошивки

LGPL2 же вроде пофиг на тивоизацию, главное чтобы исходники были

Или iconv теперь тоже под LGPL3?

sergej ★★★★★
()
Ответ на: комментарий от sergej

>> на других нет возможности перепрошивки

LGPL2 же вроде пофиг на тивоизацию, главное чтобы исходники были

Или iconv теперь тоже под LGPL3?

я не настолько шарю в нюансах. но опасаюсь :)

waker ★★★★★
()

> Есть ли библиотека на C с помощью которой можно преобразовать в программе строку-кирилицу из utf-8 в koi8-r или cp866 ?

есть, <stdlib.h>.

// setlocale+mbstowcs+wcstombs.

arsi ★★★★★
()
Ответ на: комментарий от arsi

а как же суровое поинтерное жонглирование?

anonymous
()

Если нужна кириллица в консоли Windows, то проблему можно решить компиляцией со следующими ключами (для gcc/mingw):

-finput-charset=utf-8 -fexec-charset=ibm866

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