UTF-16

E453728

UTF-16 is a variable-length character encoding for Unicode that represents most common characters in one 16-bit code unit and others, including supplementary characters, in pairs of 16-bit code units.

All labels observed (3)

Label Occurrences
UTF-16 canonical 12
JavaScript (UTF-16 code units for strings) 1
UTF-16LE 1

How this entity was disambiguated

Statements (49)

Predicate Object
instanceOf Unicode encoding form
character encoding
variable-length encoding
backwardCompatibleWith UCS-2 for BMP range
byteOrderMarkCodeUnit U+FEFF
codeUnitType 16-bit code unit
comparedTo UTF-32
UTF-8
definedInStandard ISO/IEC 10646
Unicode Standard
designGoal efficient encoding for BMP characters
support for full Unicode range
differsFrom UCS-2 in handling of supplementary characters
encodesBMPCharactersIn 1 code unit
encodesSupplementaryCharactersIn 2 code units
encodingOf Unicode code points
endiannessDependent true
hasVariant UTF-16 with BOM
UTF-16BE
UTF-16LE
linked to: UTF-16
introducedToReplace UCS-2
isSelfSynchronizing false
lessSpaceEfficientThan UTF-8 for ASCII-heavy text
maximumBytesPerCharacter 4 bytes
minimumBytesPerCharacter 2 bytes
moreSpaceEfficientThan UTF-32 for BMP-heavy text
notSuitableFor byte-oriented protocols without defined endianness
relatedConcept Unicode code unit
Unicode scalar value
surrogate pair
requiresGraphemeClusteringForUserCharacters true
requiresSurrogateHandling true
standardizedBy International Organization for Standardization
Unicode Consortium
supportsCodePointRange U+0000 to U+10FFFF
surrogatePairSize 2 code units
typicalUse internal string representation in programming languages
operating system APIs
text processing APIs
usedBy .NET Framework
Java (String internal representation in many versions)
JavaScript (UTF-16 code units for strings)
linked to: UTF-16

Microsoft Windows
linked to: Windows
usesBasicMultilingualPlane true
usesByteOrderMark optional
usesCodeUnitSize 16 bits
usesHighSurrogatesRange U+D800 to U+DBFF
usesLowSurrogatesRange U+DC00 to U+DFFF
usesSurrogatePairs true

How these facts were elicited

Referenced by (14)

Full triples — surface form annotated when it differs from this entity's canonical label.

UTF-16 hasVariant UTF-16LE
linked to: UTF-16
UTF-16 usedBy JavaScript (UTF-16 code units for strings)
linked to: UTF-16
UCS-2 predecessorOf UTF-16
UCS-2 largelySupersededBy UTF-16
Unicode 3.2 supports UTF-16