Re: ICU
Мда. Сам нашёл, как сделать: почитать документацию... _ В C API ICU всё реализовано на колбэках. Надо установить штатные колбэки UCNV_TO_U_CALLBACK_SUBSTITUTE и UCNV_FROM_U_CALLBACK_SUBSTITUTE с контекстом UCNV_SUB_STOP_ON_ILLEGAL на соответствующие энкодеры. http://icu-project.org/apiref/icu4c44/ucnv_8h.html#ab1f96fe9de8e2ee39159f748a8d33a4b ucnv_setToUCallBack(m_converter, UCNV_TO_U_CALLBACK_SUBSTITUTE, UCNV_SUB_STOP_ON_ILLEGAL, 0, 0, err); И вообще, хороший пример работы с ICU есть здесь: https://chromium.googlesource.com/experimental/chromium/blink/+/master/Source/wtf/text/TextCodecICU.cpp -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/528f7876.8000...@yandex.ru
ICU
Может быть кто-нибудь пользовался libicu для перекодировки? Наверняка тут есть такие. :-) Подскажите пожалуйста. Мне нужно перекодировать строго в/из ASCII-7. Если в источнике или в результате есть символы с кодом больше 127, я хочу получить ошибку. Использую ucnv_convertEx(), например передавая в качестве from энкодера, энкодер с кодировкой US-ASCII. Но чтобы там ни было в старшем бите, он мне успешно перекодирует (без возврата ошибки) в непечатные символы. Как сделать так, чтобы при передаче некорректного символа ASCII (с установленным старшим битом), устанавливался флаг ошибки, а не SUCCESS? -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/528d0311.3010...@yandex.ru
xalan+xereces+icu + ðóññêèé
Hello! Люди в указанной связке из пакетов (причем c libxercesicu1) при попытке обработать xml с русскими символами Xalan выдает ошибку: SAXException Message is: Invalid character (Unicode: 0xDA72) Чего подправить надо? (ну руки понятно... :) -- Best regards, Dmitry mailto:[EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]