[mdk-re] Re: XML parser encodings

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_mivlgu=2Emurom=2Eru?=
Чт Ноя 15 17:37:27 MSK 2001


On Thu, 15 Nov 2001 02:59:00 +0300
Mikhail Zabaluev <mhz на alt-linux.org> wrote:

> > Лучше посмотреть на реализацию функции g_convert_with_fallback()
> > в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
> > принцип - при ошибке преобразования исходная строка
> > преобразуется в UTF-8 (что должно пройти в любом случае), а
> > затем производится посимвольное преобразование из UTF-8 в
> > требуемую кодировку, с заменой символов, которые не удается
> > преобразовать.
> 
> Сие грамотно, разве что так тщательно нужно перекодировать только то
> место, где iconv спотыкается -- ведь функция сама двигает указатели,
> пока все OK.

В общем случае это не проходит - исходная кодировка может быть
хитрой многобайтовой, поэтому пропустить мешающий символ сложно.
В UTF-8 такой проблемы нет. Впрочем, все это используется только
если строка не перекодировалась напрямую.




Подробная информация о списке рассылки community