In Practice


Encode::Unicode::UTF7 −− UTF−7 encoding


    use Encode qw/encode decode/;
    $utf7 = encode("UTF−7", $utf8);
    $utf8 = decode("UTF−7", $ucs2);


This module implements UTF−7 encoding documented in RFC 2152. UTF−7 , as its name suggests, is a 7−bit re-encoded version of UTF−16BE . It is designed to be MTA-safe and expected to be a standard way to exchange Unicoded mails via mails. But with the advent of UTF−8 and 8−bit compliant MTAs, UTF−7 is hardly ever used.

UTF−7 was not supported by Encode until version 1.95 because of that. But Unicode::String, a module by Gisle Aas which adds Unicode supports to non−utf8−savvy perl did support UTF−7 , the UTF−7 support was added so Encode can supersede Unicode::String 100%.

In Practice

When you want to encode Unicode for mails and web pages, however, do not use UTF−7 unless you are sure your recipients and readers can handle it. Very few MUAs and WWW Browsers support these days (only Mozilla seems to support one). For general cases, use UTF−8 for message body and MIME-Header for header instead.


Encode, Encode::Unicode, Unicode::String

RFC 2781 <http://www.ietf.org/rfc/rfc2152.txt>

More Linux Commands

wcstombs(3) - convert a wide-character string to a multibyte
If dest is not NULL, the wcstombs() function converts the wide-character string src to a multibyte string starting at dest. At most n bytes are written to dest.

mysql_table(5) - Postfix MySQL client configuration.........
mysql_table.5 - The Postfix mail system uses optional tables for address rewriting or mail routing. These tables are usually in dbm or db format. Alternatively,

gnutls_certificate_free_credentials(3) - API function.......
This structure is complex enough to manipulate directly thus this helper function is provided in order to free (deallocate) it. This function does not free any

XtSessionGetToken(3) - token management for checkpointing...
The XtSessionGetToken function will return NULL if the checkpoint operation instigated by the session manager is not currently under way. To indicate the comple

tzset(3) - initialize time conversion information (ManPage)
The tzset() function initializes the tzname variable from the TZ environment variable. This function is automatically called by the other time conversion functi

padsp(1) - PulseAudio OSS Wrapper - Linux manual page.......
padsp.1 - padsp starts the specified program and redirects its access to OSS compatible audio devices (/dev/dsp and auxiliary devices) to a PulseAudio sound ser

ldap_unbind(3) - LDAP bind routines - Linux manual page.....
These routines provide various interfaces to the LDAP bind operation. After an association with an LDAP server is made using ldap_init(3), an LDAP bind operatio

Tcl_SetEnsembleUnknownHandler(3) - manipulate ensemble comma
An ensemble is a command, bound to some namespace, which consists of a collection of subcommands implemented by other Tcl commands. The first argument to the en

xml2-config(1) - script to get information about the install
xml-config is a tool that is used to determine the compile and linker flags that should be used to compile and link programs that use GNOME-XML. OPTIONS xml-con

aio_cancel(3) - cancel an outstanding asynchronous I/O reque
The aio_cancel() function attempts to cancel outstanding asynchronous I/O requests for the file descriptor fd. If aiocbp is NULL, all such requests are canceled

XkbAddGeomShape(3) - Add a shape to a keyboard geometry.....
XkbAddGeomShape.3 - Xkb provides functions to add a single new element to the top-level keyboard geometry. In each case the num_ * fields of the corresponding s

gkeytool-4.6(1) - Manage private keys and public certificate
Cryptographic credentials, in a Java environment, are usually stored in a Key Store. The Java SDK specifies a Key Store as a persistent container of two types o

We can't live, work or learn in freedom unless the software we use is free.