Converster de iso para ansii  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
Luiz-SP
JavaChild
[Avatar]

Membro desde: 10/01/2004 23:20:19
Mensagens: 131
Localização: São Paulo
Offline

Alguém conhece alguma função que converta caracteres ansii para iso e vice-versa.

"Porque Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crê não pereça, mas tenha vida eterna." João 3.16
[Email]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

ANSII? ISO? Hein? Huh!?
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
thingol
Moderador

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

Uai, não é quase a mesma coisa?
ANSI - quando falamos em caracteres ANSI normalmente estamos pensando nos caracteres do Windows (Windows-1252 se não me engano).
ISO - quando falamos em ISO normalmente seria ISO-8859-1, que é quase igual à codificação do Windows, exceto por meia dúzia de caracteres.
[WWW]
Luiz-SP
JavaChild
[Avatar]

Membro desde: 10/01/2004 23:20:19
Mensagens: 131
Localização: São Paulo
Offline

Pois é meu, são só meia dúzia de caracteres, mas o lance é que estou usando isso nun sistema legado (banco de dados) do cliente que usa caracteres Iso, quando eu puxo os dados do banco do cliente para minha aplicação, aparece com os caracteres zuados porque no windows os caracteres são ansii, então pensei....preciso de algo que faça a conversão....

"Porque Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crê não pereça, mas tenha vida eterna." João 3.16
[Email]
Luca
Moderador
[Avatar]

Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline

Olá

Isto é apenas um problema de character encoding ou eu não estou entendendo nada. Se for o que eu penso a solução é simplesmente uma questão de setar corretamente os encodings. Veja qual o encoding usado no servidor da base de dados e altere sua aplicação para ficar de acordo.

Se não entende de character encoding busque por encoding aqui mesmo no GUJ.

[]s
Luca

Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."


CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/
[Email] [WWW]
fcmartins
Java Ninja
[Avatar]

Membro desde: 12/01/2005 09:40:43
Mensagens: 293
Localização: Bragança Paulista- SP
Offline

O encoding do Windows é o CP1252, que é basicamente o ISO-8859-1, também chamado de Latin1. Normalmente o banco ou o driver JDBC oferecem meios de fazer a conversão automaticamente.
Que banco está usando e qual a versão de ISO?

Dá uma olhada aqui nesse artigo da Wikipedia

Almanaque

{SCJP 1.4}
{SCWCD 1.4}
Luiz-SP
JavaChild
[Avatar]

Membro desde: 10/01/2004 23:20:19
Mensagens: 131
Localização: São Paulo
Offline

Bem, quando a versão do iso é o 2709, pelo menos é o que diz a documentação que tenho, quanto a usar JDBC... O banco não é um banco relacional, é um banco chamado Winisis que é disponibilizado gratuitamente pela unesco, ele é usado prinicpalmente em bibliotecas, pois seu mecanismo de busca textual, exibição de dados é bem produtivo para bibliotecas. Para acessar o banco eu uso um .jar que consegue 'conversar' com o banco, mas como já disse, não é jdbc...Vou estudar o encoding....já consegui fazer este programa em delphi, mas tô querendo migrar ele para java, para fazer uma aplicação web para essa biblioteca.Agradeço a ajuda de todos...

"Porque Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crê não pereça, mas tenha vida eterna." João 3.16
[Email]
thingol
Moderador

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

ISO 2709 não é um "encoding" mas um formato de dados para acesso a dados de bibliotecas (bibliotecas de livros e revistas, não de softwares!)

Provavelmente seria interessante a gente ver um "dump hexadecimal" dos bytes que você leu da base. Com isso talvez dê para chutar o encoding necessário.
[WWW]
Luiz-SP
JavaChild
[Avatar]

Membro desde: 10/01/2004 23:20:19
Mensagens: 131
Localização: São Paulo
Offline

então, realmente o iso 2709 não é encoding...descobri um site de uns carinhas que estão desenvolvendo uma versão open sorce do Winisis (o banco de dados da biblioteca) http://openisis.org/ lá encontrei o seguinte

Neste site eles dizem que isso é ISO-8859-1, então acho que nisso dá pra mim começar a trabalhar....Não é?

"Porque Deus amou o mundo de tal maneira que deu seu filho unigênito para que todo aquele que nele crê não pereça, mas tenha vida eterna." João 3.16
[Email]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

Voce pode conferir o ISO-8859-1 aqui:
http://czyborra.com/charsets/iso8859.html#ISO-8859-1

Pelo que eu vi, meio que so de bater o olho, parece ser a mesma coisa. Bom, tenta... qualquer coisa dah um berro que a gente tenta ajudar
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
renatosilva
GUJ Master

Membro desde: 16/12/2004 17:09:19
Mensagens: 1787
Offline

Cara não sei se pode ajudar, mas se não me engano ANSI refere-se ao Unicode e você deve ta querendo usar o ISO-8859-1, que é anterior ao unicode. Sei lá...
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

Bom, vou tentar esclarecer tudo de vez:

ANSI: padrao que te deixava desenhar corez hackerz nos terminais. Consiste de sequencias de escape e um monte de comandinhos legais e nao tem naaaaaaada a ver com encodings. Hoje em dia, gracas a boa evolucao das interfaces baseadas em pixels, esta morto. Quase, pq no Linux ainda se usa.

ASCII: tabela original de caracteres, na epoca em que so tinha 128 caracteres. Nao existe mais faz um bom tempo, exceto em sistemas beeem legados.

ASCII Estendido: ASCII mais uma "pagina de codigo", que quem usou DOS se lembra bastante. Tem 256 caracteres, e os 128 "extras" sao mutantes, pra caber os caracteres esquisitos que outras linguas latinas e anglo-saxonicas usam.

ISO-8859-1: outro nome pra uma das paginas de codigo mais famosonas usadas. Contem o conjunto de caracteres utilizado por linguas como ingles, frances, portugues, espanhol, italiano, alemao e umas outras ai. Ou seja, boa parte do mundo ocidental.

Unicode: viram que os ISOs e CPs da vida eram um saco, e finalmente resolveram dar um basta na historia toda, e inventaram o Unicode, que eh um conjunto de caracteres que teoricamente abriga QUALQUER glifo ja inventado pela humanidade, e ainda deixa espaco pra mais umas duas ou tres civilizacoes. O problema eh que nada era compativel com tudo isso, entao eles tiveram que "enfiar" o Unicode na tabela ASCII, e ai saiu o "revival" do ISO-8859-1, e tantos outros padroes, como o UTF-8 e UTF-16.
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
renatosilva
GUJ Master

Membro desde: 16/12/2004 17:09:19
Mensagens: 1787
Offline

cv wrote:Bom, vou tentar esclarecer tudo de vez:

ANSI: padrao que te deixava desenhar corez hackerz nos terminais. Consiste de sequencias de escape e um monte de comandinhos legais e nao tem naaaaaaada a ver com encodings. Hoje em dia, gracas a boa evolucao das interfaces baseadas em pixels, esta morto. Quase, pq no Linux ainda se usa.

ASCII: tabela original de caracteres, na epoca em que so tinha 128 caracteres. Nao existe mais faz um bom tempo, exceto em sistemas beeem legados.

ASCII Estendido: ASCII mais uma "pagina de codigo", que quem usou DOS se lembra bastante. Tem 256 caracteres, e os 128 "extras" sao mutantes, pra caber os caracteres esquisitos que outras linguas latinas e anglo-saxonicas usam.

ISO-8859-1: outro nome pra uma das paginas de codigo mais famosonas usadas. Contem o conjunto de caracteres utilizado por linguas como ingles, frances, portugues, espanhol, italiano, alemao e umas outras ai. Ou seja, boa parte do mundo ocidental.

Unicode: viram que os ISOs e CPs da vida eram um saco, e finalmente resolveram dar um basta na historia toda, e inventaram o Unicode, que eh um conjunto de caracteres que teoricamente abriga QUALQUER glifo ja inventado pela humanidade, e ainda deixa espaco pra mais umas duas ou tres civilizacoes. O problema eh que nada era compativel com tudo isso, entao eles tiveram que "enfiar" o Unicode na tabela ASCII, e ai saiu o "revival" do ISO-8859-1, e tantos outros padroes, como o UTF-8 e UTF-16.


Então eu estava toooooooooooootaaaaaaaaallllmeeeeennnnteeeee enganado

Acho que pensei que o ANSI tinha a ver com Unicode porque as funções que lidam com isso no Delphi têm esse prefixo eu acho.

PS: acho que a ANSI é uma organização também, eu li que ela é membro da ISO...

PS2: Pelo o que eu li, nem o Unicode consegue guardar todos os símbolos de todas as línguas, porque lá pro oriente existem muitas, muitas línguas e dialetos, com alfabetos de milhares de símbolos.

This message was edited 1 time. Last update was at 03/02/2005 21:04:43

cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

O Unicode 2.0, que eh maior ainda, acomoda todos esses caracteres

http://www.unicode.org
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
renatosilva
GUJ Master

Membro desde: 16/12/2004 17:09:19
Mensagens: 1787
Offline

cv wrote:O Unicode 2.0, que eh maior ainda, acomoda todos esses caracteres

http://www.unicode.org


Hummm... deve ter uns 20 bytes de largura
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team