UTF-16 is a character encoding that represents Unicode code points using either 2 or 4 bytes per character.
UTF-16 is a character encoding that describes unicode code points in byte sequences of either two or four bytes. It is therefore a variable-width character encoding.
The algorithm for encoding code points as UTF-16 is described in RFC 2781.
There are three flavors of UTF-16, little-endian, big-endian and with BOM (see endianness).