スペシャル(Unicodeブロック)
FFFEとFFFFは通常の意味で割り当てられていませんが、Unicode文字ではないことが保証されています。これらを含むテキストは定義上、正しくエンコードされたUnicodeテキストではないため、テキストのエンコードスキームを推測するために使用できます。 UnicodeのU + FEFF BYTE ORDER MARK文字をUnicodeテキストの先頭に挿入して、エンディアンを通知できます。このようなテキストを読み取り、0xFFFEに遭遇したプログラムは、次のすべての文字のバイト順を切り替える必要があることを認識します。
置換文字
置換文字 �(多くの場合、白い疑問符の付いた黒いひし形または空の四角いボックス)は、Unicode標準のSpecialsテーブルのコードポイントU + FFFDにある記号です。システムがデータのストリームを正しいシンボルにレンダリングできない場合の問題を示すために使用されます。通常、データが無効で、どの文字とも一致しない場合に見られます。
ISO-8859-1エンコード(0x66 0xFC 0x72)でドイツ語の「für」を含むテキストファイルを考えてみましょう。このファイルは、入力がUTF-8であると想定するテキストエディターで開かれます。最初と最後のバイトはASCIIの有効なUTF-8エンコーディングですが、中間バイト(0xFC)はUTF-8の有効なバイトではありません。したがって、テキストエディターは、このバイトを置換文字記号に置き換えて、Unicodeコードポイントの有効な文字列を生成できます。文字列全体が「f�r」のように表示されます。
実装が不十分なテキストエディタでは、置換をUTF-8形式で保存できます。テキストファイルのデータは次のようになります。0x660xEF 0xBF 0xBD0x72。ISO-8859-1では「f�r」として表示されます(mojibakeを参照)。置換はすべてのエラーで同じであるため、元のキャラクターを回復することはできません。より良い(しかし実装が難しい)設計は、エラーを含む元のバイトを保存し、テキストを表示するときにのみ置換に変換することです。これにより、テキストエディターは元のバイトシーケンスを保存しながら、エラーインジケーターをユーザーに表示できます。
ソフトウェアが、バイトがISO-8859-1などの別のバイトベースのエンコーディングにあると推測して、無効なUTF-8を解釈することがますます一般的になっています。これにより、貼り付けられた有効なUTF-8と無効なUTF-8の両方を正しく表示できます。 WebページがISO-8859-1(またはWindows-1252)を使用しているが、エンコードをUTF-8として指定している場合、ほとんどのWebブラウザーはすべての非ASCII文字を�として表示するために使用されますが、新しいブラウザーは誤ったバイトを個別に文字に変換しますWindows-1252。したがって、置換文字はあまり頻繁に見られません。
Unicodeチャート
特別 公式Unicodeコンソーシアムコードチャート(PDF) | ||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
U + FFFx | IA A | IA S | IA T |  | � | |||||||||||
注 1. ^ Unicodeバージョン12.0以降2. ^灰色の領域は割り当てられていないコードポイントを示します。 ^黒の領域は非文字(Unicode標準でエンコード文字として割り当てられないことが保証されているコードポイント)を示します |
歴史
次のUnicode関連ドキュメントには、Specialsブロックで特定の文字を定義する目的とプロセスが記録されています。
版 | 最終的なコードポイント | カウント | UTC ID | L2 ID | WG2 ID | 資料 |
---|---|---|---|---|---|---|
1.0.0 | U + FFFD | 1 | (決断される) | |||
U + FFFE..FFFF | 2 | (決断される) | ||||
L2 / 01-295R | ムーア、リサ(2001-11-06)、「モーション88-M2」、 UTC / L2会議の議事録#88 | |||||
L2 / 01-355 | N2369(html、doc) | Davis、Mark(2001-09-26)、 ISO / IEC 10646のテキストでUTF-8のFFFF、FFFEを許可するリクエスト | ||||
L2 / 02-154 | N2403 | ウママヘシュワラン、VS(2002-04-22)、「9.3 UTF-8でのFFFFおよびFFFEの許可」、 WG 2会議のドラフト議事録41、Hotel Phoenix、シンガポール、2001-10-15 / 19 | ||||
2.1 | U + FFFC | 1 | UTC / 1995-056 | Sargent、Murray(1995-12-06)、 WCH_EMBEDDING文字をエンコードするための推奨事項 | ||
UTC / 1996-002 | Aliprand、Joan;ハート、エドウィン。グリーンフィールド、スティーブ(1996-03-05)、「埋め込みオブジェクト」、 UTC#67分 | |||||
N1365 | Sargent、Murray(1996-03-18)、 提案の要約-オブジェクト置換文字 | |||||
N1353 | ウママヘシュワラン、VS; Ksar、マイク(1996-06-25)、「8.14」、 WG2コペンハーゲン会議#30のドラフト議事録 | |||||
L2 / 97-288 | N1603 | ウママヘシュワラン、VS(1997-10-24)、「7.3」、 未確認会議議事録、WG 2会議#33、イラクリオン、クレタ島、ギリシャ、1997年6月20日-7月4日 | ||||
L2 / 98-004R | N1681 | ISO 10646-PDAM登録およびFPDAM投票用AMD 18のテキスト 、1997-12-22 | ||||
L2 / 98-070 | Aliprand、Joan; Winkler、アーノルド、「2.1に関する追加コメント」 、1998年2月25〜27日、クパチーノでの会議からのUTCとL2の合同会議の議事録 | |||||
L2 / 98-318 | N1894 | 10646-1 / FPDAM 18、改訂18:記号とその他 、1998-10-22の改訂テキスト | ||||
3.0 | U + FFF9..FFFB | 3 | L2 / 97-255R | Aliprand、Joan(1997-12-03)、「3.D Proposal for In-Line Notation(ruby)」、 承認議事録 -UTC #73&L2#170合同会議、カリフォルニア州パロアルト-1997年8月4-5日 | ||
L2 / 98-055 | Freytag、Asmus(1998-02-22)、 インラインおよびインターリニア注釈の実装のサポート | |||||
L2 / 98-070 | Aliprand、Joan;ウィンクラー、アーノルド、「3.C.5。インラインおよびインターリニアアノテーションの実装のサポート」 、1998年2月25〜27日、クパチーノでの会議からの共同UTCおよびL2会議の議事録 | |||||
L2 / 98-099 | N1727 | Freytag、Asmus(1998-03-18)、 東アジアのタイポグラフィで使用されるインターリニア注釈の実装のサポート | ||||
L2 / 98-158 | Aliprand、Joan; Winkler、Arnold(1998-05-26)、「Inline and Interlinear Annotations」、 Draft Minutes-UTC#76&NCITS Subgroup L2#173合同会議、ペンシルベニア州トレディフリン、1998年4月20-22日 | |||||
L2 / 98-286 | N1703 | ウママヘシュワラン、VS; Ksar、マイク(1998-07-02)、「8.14」、 未確認会議議事録、WG 2会議#34、レドモンド、ワシントン州、米国; 1998-03-16--20 | ||||
L2 / 98-270 | 日浦秀樹;小林達夫(1998-07-29)、 インラインおよびインターリニア注釈提案への提案 | |||||
L2 / 98-281R(pdf、html) | Aliprand、Joan(1998-07-31)、「In-Line and Interlinear Annotation(III.C.1.c)」、 未確認議事録-UTC#77&NCITSサブグループL2#174 JOINT MEETING、レドモンド、7月1998年29-31 | |||||
L2 / 98-363 | N1861 | 佐藤、TK(1998-09-01)、 ルビーマーカー | ||||
L2 / 98-372 | N1884R2(pdf、doc) | ウィスラー、ケン。等。 (1998-09-22)、 UCSの追加文字 | ||||
L2 / 98-416 | N1882.zip | 線形間注釈の実装のサポート 、1998-09-23 | ||||
L2 / 98-329 | N1920 | ISO / IEC 10646-1 / AmdのWDでのPDAM登録と検討投票の組み合わせ。 30、修正30:追加のラテン文字およびその他の文字 、1998-10-28 | ||||
L2 / 98-421R | Suignard、ミシェル。日浦秀樹(1998-12-04)、 PDAM 30インターリニアアノテーション文字に関する注意 | |||||
L2 / 99-010 | N1903(pdf、html、doc) | Umamaheswaran、VS(1998-12-30)、「8.2.15」、 WG 2会議議事録35、ロンドン、英国; 1998-09-21--25 | ||||
L2 / 98-419(pdf、doc) | Aliprand、Joan(1999-02-05)、「Interlinear Annotation Characters」、 承認議事録-UTC#78&NCITSサブグループL2#175合同会議、カリフォルニア州サンノゼ-1998年12月1〜4日 | |||||
UTC / 1999-021 | Duerst、マーティン。 Bosak、Jon(1999-06-08)、 注釈文字に関するW3C XML CGステートメント | |||||
L2 / 99-176R | ムーア、リサ(1999-11-04)、「注釈文字に関するW3Cリエゾンステートメント」 、1999年6月8〜10日、シアトルでのUTC / L2合同会議の議事録 | |||||
L2 / 01-301 | ウィスラー、ケン(2001-08-01)、「E。プレーンテキストインターチェンジの「強く非推奨」として示されている」 、Unicode標準の文字非推奨の分析 | |||||
|