Seguinte pessoal, estou fazendo reengenharia de uma aplicação (desktop) e realizando alguns ajustes para passar de Windows para Linux (sentenças que gravam em arquivo mais ou menos assim: “C:\dir1\dir2” devem ser alteradas). Entretanto o grande problema é com os “warnings”, por exemplo:
warning: unmappable character for encoding UTF8
Aplicacao aplicacao; // objeto da aplica��
)
Bom sei do que se trata o warning, mas a pergunta é, como resolver isso da maneira mais eficiente, sem ter que ficar mudando os caracteres e passando para ‘\u000’? :thumbup:
Unicode e "falsa" portabilidade do Java
6 Respostas
a) Você pode fazer (ou achar) um programa que converta os arquivos-fonte que estão no “encoding” ISO-8859-1 (Windows) e os passe para UTF-8
b) Acho que você pode passar o “file.encoding” como opção do compilador, se você não puder alterar a codificação dos arquivos-fonte originais.
javac -J-Dfile.encoding=ISO-8859-1 seus.arquivos.fonte.Java
Faça direito ue.
Aprenda que todo arquivo deve ter seu encoding explicitamente considerado, se você usar o encoding do SO, a portabilidade vai mesmo pro saco, mas nesse caso o culpado é você.
Já trabalhei com sistemas Java que operam em windows, linux e solaris. Depois que aprende as duras penas como fazer direito, passou a funcionar sem o menor problema.
Já trabalhei com sistemas Java que operam em windows, linux e solaris. Depois que aprende as duras penas como fazer direito, passou a funcionar sem o menor problema.
Bom então… acho que estou na fase das ‘duras penas’ :?
Mas a sua sugestão foi legal thingol, vou testar aqui. Abraços.
Também estou tendo esse problema, se configuro o meu Netbeans para UTF-8, quando compilo e rodo uma aplicação do Windows quando alerta (JOptionPane) que contenha caracteres especiais sai todo encrencado (cheio de sinais).
Tem como ajustar isso?
a) Você pode fazer (ou achar) um programa que converta os arquivos-fonte que estão no “encoding” ISO-8859-1 (Windows) e os passe para UTF-8
b) Acho que você pode passar o “file.encoding” como opção do compilador, se você não puder alterar a codificação dos arquivos-fonte originais.javac -J-Dfile.encoding=ISO-8859-1 seus.arquivos.fonte.Java
Thingol você é fera, funcionou, grande dica. Cinco estrelas!!! 
[ edited ] Bom fica para a próxima, já havia avaliado infelizmente. :XD: [/ edited ]
Acho que vi algo parecido quando tinha um cara no forum.java.sun.com que perguntava como fazer para compilar os programas dele que tinham caracteres em chinês.
public static void main(String[] args) {
System.out.printf ("您好,世界! %n");
}