テキストを様々なUnicode形式に変換、またはUnicodeをテキストに復元します。
ユニコードは、すべての文字に固有のコードポイントを割り当てる普遍的な文字エンコーディング標準です。これにより、コンピュータは世界のほとんどの書記体系でテキストを一貫して表現し、操作できるようになります。
ユニコードは、150以上の現代および歴史的な文字体系、シンボル、絵文字、その他の表記法を含む140,000以上の文字をサポートしています。ユニコードエスケープシーケンスは、これらの文字をプログラミング言語やデータ形式で表現する方法です。
ユニコードは各文字に数値であるコードポイントを割り当てます。これらのコードポイントは通常、16進数形式で「U+」を前に付けて表記されます。例えば、文字「A」のコードポイントはU+0041です。
UTF-8:可変長エンコーディング(文字あたり1〜4バイト)。ASCII文字は1バイトのみを使用するため、ASCIIテキストに効率的です。
UTF-16:文字あたり2または4バイトを使用。多くのプログラミング環境(JavaScript、Java、.NET)で一般的です。
UTF-32:文字あたり固定4バイト。処理はより単純ですが、より多くのストレージを使用します。
デコード時、ソフトウェアはエンコードされたバイトを読み取り、対応するユニコードコードポイントにマッピングし、適切な文字を表示します。
プログラミング言語によってユニコードエスケープシーケンスの形式が異なります:
JavaScript:BMP文字には\u0041、その他には\u{1F600}
Python:BMPには\u0041、その他には\U0001F600
C#:BMPには\u0041、その他にはサロゲートペアを使用
異なる文字がユニコードでどのように表現されるかを見てみましょう:
U+0048 U+0069
48 69
00 48 00 69
\u0048\u0069