Ajude o site desativando o bloqueador de anúncio

ASSINE A NEWSLETTER

Cadastrando...
PIX uDesenv pix deposito

(BINÁRIO) EncodeUTF8 [AS]

Autor: Eurai Criado: 25/10/2024 Atualizado: 25/10/2024

Descrição

Converte uma string de origem de um encoding (code-page) conhecido para a codificação UTF-8 ( 8-bit Unicode Transformation Format.

 

Sintaxe

EncodeUTF8( , )

 

Parâmetros


Par Nome Tipo Descrição Default Obg Ref
01
cValor Caracter Valor a Converter   X  
02 cEncoding Caracter   cp1252    

 

Retorno

Retorno Tipo Descrição
cRet Caracter
Retorna a string no formato UTF-8

 

Exemplo

#INCLUDE "TOTVS.CH"
 
User Function EncodeUTF8()

conout( encodeUTF8( 'Olá' ) )
 
Return( Nil )

Resultado
  

 

 

 

Informações adicionais

Exemplo: Integrações WEB

Os valores possíveis para o parâmetro encoding são aqueles utilizados pela biblioteca iconv. Pode-se visualizar o conjunto de valores a partir do executável binário gerado pela biblioteca iconv pelo comando: iconv -l. Alguns dos valores possíveis são "cp1252", "cp1251", "iso8859-1"

Existem determinados códigos na tabela ASCII que não fazem parte da tabela CP1252, segue abaixo :

ASCII 129

ASCII 141

ASCII 143

ASCII 144

ASCII 157

Caso a função EncodeUTF8() seja chamada onde o parâmetro contém qualquer um destes caracteres para conversão, será registrado no log de console do TOTVSAppServer a mensagem "*** Warning - Invalid conversion from cp1252 to utf-8", e a função retornará NIL ( Nulo ), pois nenhum destes códigos ASCII faz parte da tabela de codificação CP1252. Em sistemas legados do Microsoft DOS, que utilizavam a codificação CP437 e/ou CP850, estes códigos representavam as letras "ü", "ì","Å","É" e "¥", respectivamente

A tabela de codificação CP1252 contempla a representação gráfica dos caracteres da lista acima, porém usando um outros códigos ASCII : A letra ü ( u minísculo com trema ) é representada pelo código ASCII 252, ì ( i minúsculo com crase ) é representado por ASCII 236, Å ( A maiúsculo com anel ) é representado por ASCII 197, É ( E maiúsculo com acento agudo ) é representado por ASCII 201, e o simbolo Yen é representado por ASCII 165

Estes caracteres podem ser encontrados em tabelas de dados, onde os dados são provedientes de sistemas legados, ou importados de arquivos texto ASCII, que representam os dados utilizando uma página de código do DOS ( CP437 e/ou CP850 ).

 

 

 

 

Gostou? Compartilhe com seus amigos e deixe um comentário! 😎