Últimamente no entiendo por qué UTF8 no es el encoding por defecto en todos los sistemas. Bueno, es simplemente una decisión de diseño y utilizar cualquier otro encoding es perfectamente defendible (por las mismas razones por las que existen, optimización local).
Sea como sea, en todo proyecto en el que he participado, lo primero que se hace es intentar encontrar todos esos parametros que ajustan el encoding para indicar que se use UTF8. La tarea no suele ser trivial y siempre se escapa alguno, pero todo es cuestion de tiempo y de incidencias de los usuarios.
Uno de los primeros pasos por supuesto es configurar nuestro editor. En mi caso soy un usuario de Eclipse y apenas sé que es eso de NetBeans o IntelliJ.
1. Workspace
Lo fácil, indicar que queremos utilizar UTF8 en el workspace:2. Properties
¿Qué está pasando con los ficheros de "properties"? Que no cunda el pánico:3. Maquina virtual
Pequeños detalles que siempre nos pasamos, la consola y los ficheros creados utilizando la libreria de entrada/salida (IO/NIO):
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-vmargs | |
-Dosgi.console.encoding=UTF-8 | |
-Dfile.encoding=UTF-8 |
4. Plugins
Último paso, revisar cualquier otro plugin. A más plugins más opciones, más sitios donde esconder la configuración traicionera de un encoding.El resultado
Finalmente podemos disfrutar del resultado. Me encanta especialmente poder ver en la consola UTF-8, y no simplemente pensar que esos porcentages y símbolos de dolar son lo que espero que sean.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class WriteUTF8 { | |
public static void main(String[] args) { | |
System.out.println("სწორი"); | |
} | |
} |
No hay comentarios:
Publicar un comentario