> Ребят, подскажите, пожалуйста, принцип перекодировки iconv.
> Мне нужно ручками(скриптом), без использования iconv, перекодировать русский текст из
> 1251 в КОИ-8R и UTF-8 и наоборот. Признаюсь, делаю лабу в
> универе, но в будущем очень пригодится знать, как говорится подноготную.
> Заранее спасибо за помощь.
> Ребят, подскажите, пожалуйста, принцип перекодировки iconv.
> Мне нужно ручками(скриптом), без использования iconv, перекодировать русский текст из
> 1251 в КОИ-8R и UTF-8 и наоборот. Признаюсь, делаю лабу в
> универе, но в будущем очень пригодится знать, как говорится подноготную.
> Заранее спасибо за помощь.1. Скрипт на каком языке? Какие утилиты/библиотеки/фреймворки можно использовать?
2. Подноготную iconv узнать легко.
Так узнаем что iconv находится в пакете libc-bin:
$ apt-file search /usr/bin/iconv
Так получаем исходники:
$ apt-get source libc-bin
Дальше заходим в каталог с исходниками iconv:
$ cd eglibc-2.17/iconv
и начинаем копать. Там обычный код на Си. Но не думаю что в вашем задании это особо поможет.
3. То, что вам нужно сделать, разобраться с таблицами кодировок.
http://en.wikipedia.org/wiki/Windows-1251
http://en.wikipedia.org/wiki/KOI8-R
http://en.wikipedia.org/wiki/UTF-8
А затем написать код, приводящий код символа из одной таблицы в код символа из другой.
Например, если нужно перевести символ с кодом 0x11 из кодировки 1 в кодировку 2, и в кодировке 1 'nj код символа "X", а в кодировке 2 код сивола "X" это 0x22, значит надо вместо 0x11 поставить 0x22. Это принцип. Алгоритм придумайте сами, в этом наверное и есть суть задания. Таблицы я вам выше привел.