From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Mikhail Zabaluev To: mandrake-russian@altlinux.ru Message-ID: <20011114235900.GL1995@localhost.localdomain> Mail-Followup-To: Mikhail Zabaluev , mandrake-russian@altlinux.ru References: <20011112225043.GB1936@localhost.localdomain> <20011113175016.GO1754@pc152.belcaf.minsk.by> <20011113210555.4db73470.vsu@mivlgu.murom.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20011113210555.4db73470.vsu@mivlgu.murom.ru> User-Agent: Mutt/1.3.23.1i Subject: [mdk-re] Re: XML parser encodings Sender: mandrake-russian-admin@altlinux.ru Errors-To: mandrake-russian-admin@altlinux.ru X-BeenThere: mandrake-russian@altlinux.ru X-Mailman-Version: 2.0 Precedence: bulk Reply-To: mandrake-russian@altlinux.ru List-Help: List-Post: List-Subscribe: , List-Id: Linux-Mandrake RE / ALT Linux discussion list List-Unsubscribe: , List-Archive: Date: Thu Nov 15 02:48:00 2001 X-Original-Date: Thu, 15 Nov 2001 02:59:00 +0300 Archived-At: List-Archive: List-Post: Hello Sergey, On Tue, Nov 13, 2001 at 09:05:55PM +0300, Sergey Vlasov wrote: > > > > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы, > > > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а > > > чтоб он его просто пропускал, и топал дальше текст жевать? > > Если речь идет об утилите командной строки, то ключик --replace=SYMBOL, > > если о функции, то смотрите исходники утилиты командной строки. > > В эти исходники я заглядывал - лучше не смотреть, там все жестко > привязано к реализации iconv() в glibc (используются внутренние > структуры, даже не описанные в устанавливаемых файлах > заголовков). Оно и понятно - iconv --list вообще невозможно > реализовать стандартными средствами, не зависящими от реализации > iconv(). > > Лучше посмотреть на реализацию функции g_convert_with_fallback() > в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной > принцип - при ошибке преобразования исходная строка > преобразуется в UTF-8 (что должно пройти в любом случае), а > затем производится посимвольное преобразование из UTF-8 в > требуемую кодировку, с заменой символов, которые не удается > преобразовать. Сие грамотно, разве что так тщательно нужно перекодировать только то место, где iconv спотыкается -- ведь функция сама двигает указатели, пока все OK. -- Stay tuned, MhZ JID: mookid@jabber.org ___________ After all, all he did was string together a lot of old, well-known quotations. -- H.L. Mencken, on Shakespeare