Clipper On Line • Ver Tópico - UTF / Unicode / CHR / ASC - Dicas acentuação

UTF / Unicode / CHR / ASC - Dicas acentuação

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

UTF / Unicode / CHR / ASC - Dicas acentuação

Mensagempor susviela@bol.com.br » 26 Nov 2018 17:16

HMG 3.4.4
----------------
Estou meio enrolado aqui com essa combinação em HMG, falta de conhecimento mesmo.

Estou desenvolvendo uma classe para encriptar um texto e usando como técnica converter os caracteres do texto para o seu valor ASC (a esse valor, por exemplo somo + 1 ) e converto novamente para carácter CHR, e salvo esse texto, tudo ok com a parte lógica mas quando o texto tem acentuação o resultado ao desencriptar não é o esperado.

Tenho quase certeza que a combinação HMG + Harbour está me colocando nessa situação, mais por desconhecimento mesmo.

   //fase I 
   For nI := 1 to cTamanhoTexto 

      cCar := SUBS(cTextoFechado, nI, 1)
      cCar := CHR(ASC(cCar) - Val( subs(::cChave, nDente, 1 ) ) )
      
      cTemp := cTemp + cCar
      
      nDente++
      IF ( nDente > cTamanhoChave )
         nDente := 1
      ENDIF 
      
      
   Next nI


Já tentei algumas configurações de páginas.

#include <hmg.ch>
#include "hbclass.ch"

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_UTF8

Function Main

   hb_langSelect( "pt" )

        Load Window Main
        Main.Center
        Main.Activate

Return



Sem_Erro.png
Sem acentuar OK
Sem_Erro.png (6.13 KiB) Visualizado 1298 vezes


Erro-Acento.png
Usando acentos erro !
Erro-Acento.png (6.77 KiB) Visualizado 1298 vezes
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar de usuário

susviela@bol.com.br
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 236
Data de registro: 30 Jun 2017 11:17
Cidade/Estado: São José / SC
Curtiu: 153 vezes
Mens.Curtidas: 24 vezes

UTF / Unicode / CHR / ASC - Dicas acentuação

Mensagempor susviela@bol.com.br » 26 Nov 2018 19:30

Opa ...

Aparentemente está resolvido, vamos aos testes...

   REQUEST HB_LANG_PT
   REQUEST HB_CODEPAGE_PT850     
   HB_SetCodePage( "PT850" )                 
   HB_LANGSELECT("PT")



Só uma dúvida ... o REQUEST em alguns exemplos está fora do MAIN, em que isso influência ?

Agora_Sem_Erro.png
Vamos aos testes práticos
Agora_Sem_Erro.png (7.58 KiB) Visualizado 1286 vezes
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar de usuário

susviela@bol.com.br
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 236
Data de registro: 30 Jun 2017 11:17
Cidade/Estado: São José / SC
Curtiu: 153 vezes
Mens.Curtidas: 24 vezes

UTF / Unicode / CHR / ASC - Dicas acentuação

Mensagempor Claudio Soto » 01 Jul 2020 19:34

HB_SetCodePage( "PT850" )
Cambia la codepage para Ansi portugués.
Por defecto HMG trabaja en unicode, para esto hay que usar:
Hb_ucode ()
Hb_uchar ()
En vez de asc/chr que funcionan sólo con paginas de código Ansi
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar de usuário

Claudio Soto
Colaborador

Colaborador
 
Mensagens: 555
Data de registro: 27 Ago 2012 12:31
Cidade/Estado: Uruguay
Curtiu: 35 vezes
Mens.Curtidas: 166 vezes




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Google [Bot] e 6 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro