2015-05-27 9 views
1

Перед вызовом при отображении символа C cedilla (U+00E7 ç) используется на французском языке, на телефоне.символ c cedilla (SMALL) отображается как CAPITAL

Когда он отправляется через USSGW/SS7 как маленькую c cilla, он отображается на трубке в качестве капитала c cedilla (U+00C7 Ç).

Для информации символ кодируется gsm7bit.

У вас есть решение или предложение для этой ситуации?

+0

Вы могли идентифицировать код или библиотеку, использующую старое сопоставление? – javabrett

ответ

1

Оригинал ETSI TS 100 900 V7.2.0 (1999-07) Цифровая сотовая система связи (Phase 2+); Алфавиты и информация для конкретного языка (GSM 03.38 версия 7.2.0 Release 1998) Определенный байт 0x09 как Ç (столица C cedilla).

Впоследствии в GSM 03.38 to Unicode mappings, было сделано уточнение:

Общие указания: Эта таблица содержит данные Консорциум Unicode имеет о том, как ETSI GSM 03.38 7-бит по умолчанию алфавит символов сопоставляются в Unicode. Это сопоставление основано на ETSI TS 100 900 V7.2.0 (1999-07) с коррекцией от 0x09 до small c-cedilla, а не капитал C-cedilla.

и в таблице:

0x08 0x00F2 # LATIN SMALL LETTER O WITH GRAVE 
0x09 0x00E7 # LATIN SMALL LETTER C WITH CEDILLA 
#0x09 0x00C7 # LATIN CAPITAL LETTER C WITH CEDILLA (see note above) 
0x0A 0x000A # LINE FEED 

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

Я не вижу отображения для Ç, поэтому он больше не должен появляться.

Смежные вопросы