Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmento - TOTVS Backoffice Linha Protheus - ADVPL - Converter um texto para binário

time.pngTempo aproximado para leitura: 00:02:00 min

Dúvida
É possível converter um texto para binário incluindo o retorno do carro (carriage return | CR | Chr(13)), o salto de linha (line feed | LF | Chr(10)) e outros caracteres presentes na tabela ASCII?

Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) – ADVPL – A partir da versão 11.80

Solução
Sim, porém será necessário o uso das funções abaixo:

Chr() Converte um código ASCII para caractere
Bin2Str()
Converte uma string com caracteres para uma string com o valor binário
StrTran()
Pesquisa e substitui um conjunto de caracteres de uma string


Fonte

// BIBLIOTECAS NECESSÁRIAS
#Include "TOTVS.ch"

// CONSTANTES NECESSÁRIAS
#Define ENTER Chr(10) + Chr (13) // SALTO DE LINHA (CARRIAGE RETURN + LINE FEED)
#Define TAB Chr(9) // TABULAÇÃO (TAB)
#Define BULLET Chr(7) // TÓPICO (BULLET POINT)

// CENÁRIO PARA CONVERSÃO
User Function MainFunct()
Local cMessage := "LINGUAGENS" + ENTER

// MONTAGEM DA MENSAGEM
cMessage += TAB + BULLET + " ADVPL" + ENTER
cMessage += TAB + BULLET + " TL++" + ENTER
cMessage += TAB + BULLET + " 4GL"

MsgInfo(cMessage) // VIDE ÁREA "MENSAGEM 01"
MsgInfo(Text2Bin(cMessage)) // VIDE ÁREA "MENSAGEM 02"
Return (NIL)

// CONVERTE UM TEXTO PARA BINÁRIO COM ZERO E UM
Static Function Text2Bin(cText)
Default cText :=""

// VALIDA O CONTEÚDO ENVIADO
If (ValType(cText) == "C" .And. !Empty(cText))
cText := StrTran(Bin2Str(cText), Space(1), "0")
cText := StrTran(cText, "x", "1")
EndIf
Return (cText)


Mensagem 01

LINGUAGENS
 ADVPL
 TL++
 4GL

 
Mensagem 02

01001100010010010100111001000111010101010100000101000111010001010100111001010011000010100000110100001001000001110010000001000001010001000101011001010000010011000000101000001101000010010000011100100000010101000100110000101011001010110000101000001101000010010000011100100000001101000100011101001100


Saiba mais
CHR - ASCII para caractere
BIN2STR - String para binário
STRTRAN - Pesquisa e substitui uma string em outra

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _