Эти нехарактеры предназначены для внутреннего использования приложением и не должны взаимозаменяться.
Я пытался объяснить, основываясь на том, что сказано в стандарте Unicode.
Unicode получил66 не персонажей.Для всех 17 самолетов у них есть две каждая, последние две кодовые точки плоскости, заканчивающиеся FFFE FFFF.32 других не-символа являются непрерывным блоком от U + FDD0 до U + FDEF.
Итак, общее количество
17*2 + 32 = 66
Прочитайте следующий текст из главы 16 Unicode, в которой говорится, что это в каком-то случайном месте из-за «исторической причины», мне любопытно, но я неНе думаю, что есть какая-то двусмысленность.
По историческим причинам диапазон U + FDD0..U + FDEF содержится в блоке арабских форм представления-A, но эти нехарактеры не являются «арабскими нехарактерами» или «справа налево»noncharacters "и не отличаются каким-либо иным образом от других noncharacters, за исключением значений их кодовых точек
U+FEFF
- это спецификация, а U+FFFE
- ее замененная байтами версия.Но так как U+FFFE
не является символом, когда процесс интерпретации находит U + FFFE в качестве первого символа, он сигнализирует либо о том, что процесс столкнулся с текстом, который имеет неправильный порядок байтов, либо о том, что файл не является допустимым текстом Unicode, он простодает сигнал, не стандартным способом.Это может быть либо один, либо обратный байт, либо неправильный текст.
В разделе Unicode 3.2 предложение C2 говорит
C2 Процесс не должен интерпретировать кодовую точку нехарактера как абстрактный символ.
- Кодовые точки нехарактера могут использоваться для внутренних целей, например, для значений или разделителей, но не должныбыть публичным.
Так что, как разработчики приложений, вы можете использовать эти символы по своему желанию.Они используются в качестве часового или разделителя или могут быть символами baslik, но их нельзя взаимозаменять.
Раздел 16.7 говорит
В сущности, нехарактеры могутсчитаться внутренним частным кодом кода приложения.В отличие от символов частного использования, описанных в Разделе 16.5, Символы частного использования, которым назначены символы и которые предназначены для использования в открытом обмене, при условии интерпретации по частному соглашению, нехарактерные символы зарезервированы (не назначены) на постоянной основе и не имеют никакой интерпретации внеиз их возможного частного использования внутри приложения
Опять U + FFFF не зарезервирован в качестве сторожевого устройства по стандарту Unicode, а только с учетом типичного варианта использования.Читайте в разделе 16.7
U + FFFF и U + 10FFFF. Эти две нехарактерные кодовые точки имеют атрибут, связанный с самыми большими значениями кодовой единицыдля определенных форм кодирования Unicode.В UTF-16 U + FFFF ассоциируется с наибольшим значением 16-битной кодовой единицы, FFFF 16 U + 10FFFF ассоциируется с наибольшим допустимым значением 32-битной кодовой единицы UTF-32, 10FFFF 16 Этот атрибут делает эти две нехарактерные кодовые точки полезными для внутренних целей в качестве стражей.Например, они могут использоваться для указания конца списка, для представления значения в индексе, которое гарантированно будет выше, чем любое допустимое символьное значение, и т. Д.