Unicode e "falsa" portabilidade do Java  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Java Vinicius Machine
JavaEvangelist
[Avatar]

Membro desde: 03/12/2004 12:56:35
Mensagens: 484
Offline

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'?

Any fool can write code that a computer can understand. Good programmers write code that humans can understand. (Fowler)


Sun Certified Programmer for the Java Platform 1.4
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

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
[WWW]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline

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.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
Java Vinicius Machine
JavaEvangelist
[Avatar]

Membro desde: 03/12/2004 12:56:35
Mensagens: 484
Offline

louds wrote:
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.

Any fool can write code that a computer can understand. Good programmers write code that humans can understand. (Fowler)


Sun Certified Programmer for the Java Platform 1.4
petter
Virtual Machine Man

Membro desde: 28/04/2006 17:11:34
Mensagens: 662
Offline

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?

-----------------------------------------
Java is the future
-----------------------------------------
[WWW]
Java Vinicius Machine
JavaEvangelist
[Avatar]

Membro desde: 03/12/2004 12:56:35
Mensagens: 484
Offline

thingol wrote: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. [/ edited ]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

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.
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team