UTF-7 (ang. 7-bit Unicode Transformation Format) – sposób zapisu tekstu w formacie Unicode przy użyciu zmiennej liczby znaków ASCII, nadający się na przykład do użycia w wiadomościach MIME.

Wiadomości e-mail wysyłane przy użyciu MIME muszą być zapisane wyłącznie przy użyciu kodów ASCII, więc każdy używający bezpośrednio ośmio- lub szesnastobitowego unikodu (na przykład UTF-16) jest traktowany jako wadliwy. Unikod zapisany przy użyciu UTF-7 może być przesyłany bez użycia nagłówka Content-Transfer-Encoding (który specyfikuje sposób reprezentacji danych binarnych za pomocą tekstu ASCII), ale pod warunkiem, że kodowanie znaków zostanie jawnie określone. Dodatkowo, przy użyciu UTF-7 w nagłówkach (np. Subject:), należy wykorzystać Encoded-Word ze standardu MIME, żeby to ujawnić.

Główną wadą UTF-7 jest jego niewygodne przetwarzanie: większość znaków ASCII może kodować niemal dowolne znaki Unicode, a każdy znak Unicode można zakodować na wiele sposobów (w zależności od sąsiednich znaków). Internet Mail Consortium zachęca do niestosowania UTF-7 w poczcie elektronicznej.

Zmodyfikowana postać UTF-7 jest używana przez protokół IMAP.

Opis

Kodowanie UTF-7 zostało po raz pierwszy zdefiniowane w dokumencie RFC 1642 ↓ (A Mail-Safe Transformation Format of Unicode), który później został zastąpiony przez RFC 2152 ↓.

Znaki o kodach poniżej 0x80 (notacja szesnastkowa), w zakresie ASCII (z wyjątkiem znaku +) są zapisywane bez zmian. Każdy znak o kodzie powyżej 0x80 jest zapisywany przy użyciu następującej sekwencji:

Znak + jest zapisywany jako +-.

Przykłady

Zobacz też

Linki zewnętrzne