Jump to content


Photo

Binary


  • Faça o login para participar
6 replies to this topic

#1 Unrealed

Unrealed

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Năo informado

Posted 21/07/2005, 20:34

Olá, por favor, gostaria de pedir ajuda, se possível, como converter um arquivo binário em uma String, no caso, hexa-decimal, na minha data-base, tenho um valor binário, por exemplo:

0xFF2048E872

se eu for converter por exemplo, sendo esta coluna "test"
xxx = cStr(RS("test")) será lida como: "??????????", mais ou menos isso.

Como faço para transformar este valor binário em String, para ficar como:
"0xFF2048E872"

É possível realizar isto em ASP?
Se alguém puder me responder, serei grato.

Obrigado por ler.
Aguardo...

#2 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Năo informado
  • Localidade:BH - MG

Posted 22/07/2005, 09:37

Vocę quer é imprimir na tela este valor binário?

Se sim:

Response.BinaryWrite(Rs("Campo"))

Eduardo Batista

#3 Unrealed

Unrealed

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Năo informado

Posted 22/07/2005, 12:37

Obrigado EdMas, o problema é, olha só como fica na hora de escrever:

˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙€H˙˙˙˙˙˙˙˙˙˙˙€H˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Î˙€b8˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Î˙€b8˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Î˙€b8˙˙˙˙˙˙˙˙˙˙Î˙€b8˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Î˙€b8Î˙€b8Î˙€b8˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Î˙€ †˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Đ˙€dr˙˙˙˙˙˙˙˙˙˙Ö˙€S˙˙˙˙˙˙˙˙˙˙Í˙€Q•

Quando na verdade era para ser:

0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F00FF00000000804881FFFFFFFFFFFFFFFFFFFF8F00FF00000000804881FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE00FF00000000806238FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE00FF00000000806238FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE00FF00000000806238FFFFFFFFFFFFFFFFFFFFCE00FF00000000806238FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE00FF00000000806238CE00FF00000000806238CE00FF00000000806238FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE00FF00000000802086FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD000FF00000000806472FFFFFFFFFFFFFFFFFFFFD600FF00000000801753FFFFFFFFFFFFFFFFFFFFCD00FF00000000805195

Me desculpe se năo expliquei melhor, na verdade é um valor HEXA-DECIMAL, mas na db é salvo como: <binary>

T+

#4 Unrealed

Unrealed

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Năo informado

Posted 22/07/2005, 16:23

Aprimorando a Dúvida:

---

Olá... Preciso de uma ajuda, se alguém estiver disponível, serei muito Grato.

Vocęs sambem que, no SQL SERVER 2.000, existem valores <binary>, que na verdade năo precisa ser necessariamente um valor binário, mas também Hexa-Decimal ( HEX ) e OCT.

Quando abrimos a table no SQL ( open table >> retturn all rows ), simplesmente vemos como: "<binary>".

Agora, usando o Query Analyzer, é possível vizualizar e editar este código, como por exemplo: 0xFF25F0A8

Em ASP, é possível consultar com dado no banco de dados ( db ), usando RecordSet, entre outros, como por exemplo RS("News") onde News eh um varchar por exemplo.

Agora, quando consulto um valor <binary>, năo consigo ver este código, convertendo este código para string ( cStr(RS("Hex")) ), ao invéz de ficar: "0xFF25F0A8", vejo mais ou menos isto: "??????????" entre outros characters estranhos.

Resumindo, é possível, em ASP, converter um valor HEXA-DECIMAL para STRING? Para ficar por exemplo, aquele valor HEXA-DECIMAL ( 0xFF25F0A8 ), como: ( "0xFF25F0A8" por exemplo, ou até mesmo "FF25F0A8" ). E futuramente converte-lo novamente para HEXA-DECIMAL ( a String ).

Resumindo: É possível converter um valor Hexa decimal como por Exemplo ( 0xFF25F0A8 ) para uma String? ( "0xFF25F0A8" ).

Se alguém souber, por favor responda.
Obrigado pela Leitura.

#5 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Năo informado
  • Localidade:BH - MG

Posted 22/07/2005, 16:39

Bom, se tens certeza de que é isso mesmo, entăo eis minha contribuiçăo:

Converter de Hexa para decimal, assim sendo, fica mais fácil chegar nos caracteres normais. Eis o código:

Function Hex2Dec( hexadecimal ) 
dim n, aux, valores, decimal, fator 
valores = "0123456789ABCDEF" 
n = 1: decimal = 0 
for n = len( hexadecimal ) to 1 step -1 
    fator  = 16 ^ ( len( hexadecimal ) - n ) 
    aux    = InStr( valores, mid( hexadecimal, n, 1 ) ) - 1 
    decimal = decimal + ( aux * fator ) 
next 
Hex2Dec = decimal 
End Function

variavel_decimal = Hex2Dec(Rs("CAMPO"))

Eduardo Batista

#6 Unrealed

Unrealed

    Novato no fórum

  • Usuários
  • 19 posts
  • Sexo:Năo informado

Posted 23/07/2005, 15:16

uhm, seu código converte Hex-Decimal para Decimal, eu precisava de um que convertesse Hex Decimal para STRING, entenda que năo uso HEX-DECIMAL para gravar números, mas açőes, cada casa minha representa uma açăo do usuário completada ou năo, e receio dizer que meu cod. possui aproximadamente 500 casas hex-decimais.

Estouro, foi o erro.

Mas Parabéns pelo código, funciona :)
Obrigado e năo precisa mais me ajudar, devo estar tomando seu tempo.

T+ Amigo

#7 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programaçăo

Posted 23/07/2005, 17:32

Vou chutar:

<%
...

Valor = CStr(Rs("Campo"))

Response.Write "0x"

For i = 1 To Len(Valor)
    Str = Hex(Mid(Valor, i, 1))
    If Len(Str) = 1 Then Str = "0" & Str
    Response.Write Str
Next

...
%>





2 user(s) are reading this topic

0 membro(s), 2 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq