Nesse vídeo demonstraremos a utilização das funções DecodeUTF8 e EncodeUTF8 que servem para manipular uma string aplicando ou convertendo usando a codificação UTF-8.
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas
#Include "TOTVS.ch"
/*/{Protheus.doc} User Function zExe138
Exemplo para transformar um texto com a codificação UTF-8
@type Function
@author Atilio
@since 16/12/2022
@see https://tdn.totvs.com/display/tec/DecodeUTF8 e https://tdn.totvs.com/display/tec/EncodeUTF8
@obs
Função DecodeUTF8
Parâmetros
+ cText , Caractere , String codificada em UTF-8 que será convertida
+ cEncoding , Caractere , Indica qual é o encoding do retorno
Retorno
+ cRet , Caractere , Retorna a string convertida
Função EncodeUTF8
Parâmetros
+ cText , Caractere , String que será convertida para UTF-8
+ cEnconding , Caractere , Indica qual é o enconding original (por padrão é o cp1252)
Retorno
+ cRet , Caractere , Retorna a string convertida em UTF-8
**** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/
User Function zExe138()
Local aArea := FWGetArea()
Local cTexto := ""
Local cEncode := ""
Local cDecode := ""
Local cMensagem := ""
//Monta o texto e faz a conversão
cTexto := "A aranha arranha a rã. A rã arranha a aranha. Nem a aranha arranha a rã. Nem a rã arranha a aranha."
cEncode := EncodeUTF8(cTexto, "cp1252")
cDecode := DecodeUTF8(cEncode, "cp1252")
//Monta a mensagem que será exibida
cMensagem := "Texto Original: '" + cTexto + "'" + CRLF + CRLF
cMensagem += "CP1252 para UTF8: '" + cEncode + "'" + CRLF + CRLF
cMensagem += "UTF8 para CP1252: '" + cDecode + "'"
FWAlertInfo(cMensagem, "Exemplo EncodeUTF8 e DecodeUTF8")
FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.
Esse portal é maravilhoso
Bom dia Amanda, tudo joia?
Opa, muito obrigado pelo comentário e feedback, é muita bondade sua.
Tenha uma ótima e abençoada quarta feira.
Um grande abraço.
Como faz para descobrir qual codificação está o texto?
Bom dia Douglas, tudo joia?
Via AdvPL / TLPP, não me lembro se tem alguma função que retorna o tipo de codificação de um texto, depois vou dar uma pesquisada sobre.
Agora se estiver por exemplo, lendo o conteúdo de um arquivo, você pode abrir esse arquivo pelo aplicativo Notepad++ e ver no canto inferior direito, que ele mostra a codificação do arquivo.
Tenha uma ótima e abençoada sexta feira.
Um grande abraço.