Eche un vistazo al artículo Unicode 4.0 support in J2SE 1.5 para conocer más acerca de los trucos inventados por Sun para proporcionar soporte para todos los puntos de código Unicode 4.0.
En resumen, se encuentran los siguientes cambios para Unicode 4.0 en Java 1.5:
char
es una unidad de UTF-16 código, no un punto de código
- nuevas API de bajo nivel utilizar un
int
para representar un punto de código Unicode
- API de alto nivel se han actualizado para comprender pares suplentes
- una preferencia hacia secuencia Char APIs en lugar de los métodos basados en carbón de leña
Dado que Java no tiene 32 caracteres de bits, voy a dejar de juzgar si podemos llamar a este buen soporte para Unicode.
La página vinculada anterior es una de las más claras que he leído en la diferenciación entre las diferentes codificaciones, lo que utilizar las API de JVM, el significado de cierta fraseología ("punto de código" frente a "unidad de código") y lo que proporciona el JNI. –
El siguiente sitio es muy claro pero bastante detallado. Incluso va más allá de la definición de puntos de código, y muestra cómo manejar y contar Grafemas (personaje renderizado completo que puede consistir en más de un punto de código, cuando se usan marcas diacríticas combinatorias) http://illegalargumentexception.blogspot.jp/2009/ 05/java-rough-guide-to-character-encoding.html –
Después de la revisión de @ AllenGeorge, estaba emocionado de leer el artículo solo para descubrir que el enlace ahora está roto :(Ruddy Oracle y su incapacidad para 301 correctamente. Cualquiera que pueda actualizar el enlace? – dimo414