Curiosidade codepage

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Curiosidade codepage

Mensagem por JoséQuintas »

Falamos muito de codepage, no geral referente a aparecer errado na tela.
Esse é o menor dos problemas, por isso comento muito sobre a forma de resolver isso.

Aqui um teste meu, neste instante, com ADO.
erroado.png
O erro, que parece um problema anormal "operação de várias etapas gerou erros".
Trata-se apenas de um caractere inválido para a codepage em uso.

Problema do caractere estar diferente na tela.... isso é o de menos.
Não conseguir gravar o cadastro... isso sim é problema.

É um teste isolado, estou gravando informações em um recordset ADO, sem qualquer tipo de base de dados.
O caractere impediu terminar a gravação.

Então... quando tiver que resolver problemas em tela por causa de codepage...
lembre-se que precisa levar em conta tudo: fonte, tela, arquivos, etc.

DBF grava qualquer coisa, certa ou errada.
Outras bases de dados não são assim, podem rejeitar caracteres inválidos para a codepage em uso.

Nota:
Este meu teste é direto, sem qualquer tipo de conversão prévia.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Curiosidade codepage

Mensagem por JoséQuintas »

Apesar de aparentemente resolvido com isso, me surgiu uma dúvida agora:
codepage.png
Windows Ansi, pelo que entendi, é a mesma codepage usada pelo Windows.
Mas... o certo é usar WinAnsi ou isso só está disponível no Windows e não é compatível em Linux?
E o 860, é português de Portugal ou do Brasil?
Ou seria o 850?
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Curiosidade codepage

Mensagem por bencz »

O Linux, por padrão, utiliza o UTF-8 em todo o sistema.
dos teste que fiz, o codepage 1252 funciona legal no Linux, normalmente salvo os meus arquivos texto com o 1252, abre no linux e mac, sem nenhum problema.
O codepage 860 é pt-PT ( DOS ) e o 850 é pt-BR ( DOS )
Imagem
Responder