特殊用途文字 (Unicodeのブロック)

特殊用途文字(とくしゅようともじ ）は、UnicodeにおいてU + FFF0 〜 FFFFの基本多言語面の最後に割り当てられる短いブロックである。 これらの16個のコードポイントのうち、5個がUnicode 3.0以降に割り当てられている。

概要 
 
 注釈付きテキストの開始を示す。
 
 注釈文字の開始
 
 注釈ブロックの終わり
 
 複合ドキュメントなど、指定されていない別のオブジェクトのテキスト内を置換する記号
 
 不明な文字、認識できない文字、表現できない文字を置き換えるために使用される 
 
 非文字 
 
 非文字

FFFEとFFFFは通常の意味で割り当てられていないが、Unicode文字ではないことが保証されている。これらはテキストの符号化を推測するために使用できる。これらの文字を含むテキストはすべて、正しく符号化されたUnicodeテキストではないとされる。Unicodeの  文字をUnicodeテキストの先頭に挿入してエンディアンを示すことができる。そのようなテキストを読み取り、0xFFFEに遭遇したプログラムは、次のすべての文字の符号の順序を切り替える必要があることを認識する。 

�（多くの場合、白い疑問符の付いた黒い菱形または空の四角）は、 Unicode規格のSpecialsにおいてコードポイントU + FFFDに割り当てられている記号であり、システムがデータ内の文字列を正しいシンボルにレンダリングできない場合の問題を示すために使用される。通常はデータが無効であるか、どの文字とも一致しない場合に表示される。

仮に、UTF-8での入力を想定したテキストエディタで、ISO-8859-1エンコード（ 0x66 0xFC 0x72 ）でドイツ語の単語 "für"を含むテキストファイルを開いたとする。最初と最後のバイトはASCIIにおいて有効なUTF-8エンコードであるが、中間のバイト（ 0xFC ）はUTF-8で有効なバイトではない。したがって、テキストエディターはこのバイトを置換文字記号に置き換えて、有効なUnicode コードポイントの文字列を生成できる。このときf�rと表示される。さらに、この状態でファイルの保存を行ったとき、正しく実装されていないテキストエディタにおいては、この置換文字符号のコードポイントが(UTF-8形式で)保存される可能性がある。このときテキストファイルのデータは0x66 0xEF 0xBF 0xBD 0x72となり、ISO-8859-1では「fï¿1/2r」として表示される(文字化けを参照)。置換はすべてのエラーで同じであるため、元の文字を復元することはできない。

文字コード表

歴史 
以下に示す文書群は、Specialsブロックに特定の文字を定義する目的と過程を示したものである。

参照 

 Unicode文字

参考文献 

Unicodeのブロック