современный Mac / iOS эквивалент FillParseTable? - PullRequest
0 голосов
/ 24 февраля 2012

Я обновляю некоторый старый код, который работает с множеством более старых (до Unicode) текстовых кодировок. Эти кодировки обычно имеют определенные байты, которые указывают начало двухбайтового символа, тогда как другие (обычно набор ASCII) представляют символ только одним байтом.

На Mac старый код использует FillParseTable API (из Script.h), чтобы получить таблицу, байты которой указывают начало двухбайтового символа. Но этот API уже давно устарел и совсем скоро исчезнет. Поэтому нам нужно заменить это чем-то другим. Заголовок гласит: «Вместо этого используйте комбинацию CFString, UCGetCharProperty и CFCharacterSet».

Но я не могу понять, как любая комбинация этих вещей делает то, что делает FillParseTable. Я смотрю поток байтов в MacJapanese, я вижу 0x93; это символ сам по себе или начало двухбайтового символа? На самом деле это последнее, но я не понимаю, как CoreFoundation (или Какао) может сказать мне это.

Кто-нибудь может подтолкнуть меня в правильном направлении?

...