Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Bin till Hex

Postades av 2002-05-02 14:21:58 - Sören Andrén, i forum visual basic - allmänt, Tråden har 9 Kommentarer och lästs av 422 personer

Jag söker konvertering Från Binärt format till Hex format
Om någon svarar på detta!
Så skulle jag vilja få ett färdigt exempel
Den måste klara av flera tecken...



Sören


Svara

Sv: Bin till Hex

Postades av 2002-05-02 14:42:51 - Johan Djupmarker

Hur har du värdet du vill visa i Hex? I en textsträng eller som en variabel? Om du har den i en variabeln gör du bara såhär:

MsgBox Hex(tal)

/Johan


Svara

Sv: Bin till Hex

Postades av 2002-05-02 14:48:01 - Johan Djupmarker

Såg att det fanns ett tips som fixade detta [Konvertera ett binärtal till hexadecimalt ]

/Johan


Svara

Sv: Bin till Hex

Postades av 2002-05-02 14:59:03 - Sören Andrén

Tack för svaret, men jag får inte till det
Om jag har en texbox, och får detta binära värde

001010100100000100000101000000010100000100000

Så vill jag få det till ett Hexvärde
Hur gör jag då enklast för att visa värdet i en ny textbox...


Sören


Svara

Sv: Bin till Hex

Postades av 2002-05-02 16:11:59 - Johan Djupmarker

Något var galet med den funktionen, jag har gjort om den lite och den fungerar för mig. Klistra in koden i ett formulär med två textboxar och en knapp.

<code>
Public Function BinToHex(ByVal NumToConv As String) As String
Dim a As Integer
Dim i As Integer
Dim B As String
Dim C As String

' För att konvertera till Hex, måste detta göras
' fyra nummer i taget. Denna del bryter isär dessa
' i exakta delar om fyra.

a = Len(NumToConv) Mod 4
If a <> 0 Then
If a = 1 Then NumToConv = "000" + NumToConv
If a = 2 Then NumToConv = "00" + NumToConv
If a = 3 Then NumToConv = "0" + NumToConv
End If

a = Len(NumToConv) / 4
For i = 0 To a - 1
B = Mid$(NumToConv, (i * 4) + 1, 4)
' Konverterar de fyra siffrorna vi har till Hex.
Select Case B
Case "0000": C = C + "0"
Case "0001": C = C + "1"
Case "0010": C = C + "2"
Case "0011": C = C + "3"
Case "0100": C = C + "4"
Case "0101": C = C + "5"
Case "0110": C = C + "6"
Case "0111": C = C + "7"
Case "1000": C = C + "8"
Case "1001": C = C + "9"
Case "1010": C = C + "A"
Case "1011": C = C + "B"
Case "1100": C = C + "C"
Case "1101": C = C + "D"
Case "1110": C = C + "E"
Case "1111": C = C + "F"
End Select
Next i
' Retunerar det hexadecimala värdet
BinToHex = C
End Function
</code>

/Johan


Svara

Sv: Bin till Hex

Postades av 2002-05-02 17:48:39 - Sören Andrén

Tackar, men var ska "knapp" funtionen in
Samt var ändrar du Textboxarn "namnet"


Sören


Svara

Sv: Bin till Hex

Postades av 2002-05-02 18:16:12 - Johan Djupmarker

Oops, fick visst inte med mig all kod...

I händelsen för knapptryckningen skriver du:

Text2=BinToHex(Text1)

/Johan


Svara

Sv: Bin till Hex

Postades av 2002-05-02 18:27:40 - Sören Andrén

Jag tackar och bugar för all hjälp...


Sören


Svara

Sv: Bin till Hex

Postades av 2002-05-02 22:32:07 - Andreas Hillqvist

Har gjort en alternativ funktion:
<code>
Public Function BinToHex(ByVal NumToConv As String) As String
Dim i As Long
Dim lPos As Long
Dim sTemp As String
Dim sResult As String
Dim sByte As String
Dim Data() As Byte
Dim Value As Long
sTemp = String(4 - (Len(NumToConv) Mod 4), "0") & NumToConv
sResult = Space(Len(sTemp) / 4)

For i = 1 To Len(sTemp) Step 4
Data = StrConv(Mid$(sTemp, i, 4), vbFromUnicode)
Value = ((Data(0) = 49) And 8) + ((Data(1) = 49) And 4) + ((Data(2) = 49) And 2) + ((Data(3) = 49) And 1)
lPos = lPos + 1
Mid$(sResult, lPos) = Hex$(Value)
Next
BinToHex = sResult
End Function
</code>


Svara

Sv: Bin till Hex

Postades av 2002-05-02 22:58:54 - Johan Djupmarker

Andreas:
Riktigt snygg lösning när du sätter ihop värdet! (hmm, hur nördig är man inte när man benämner en textremsa "snygg"...) Mest för att "reta" dej kommer jag här med en buggfix ;) Det blir en inledande 0 om längden på indatat är jämt delbart med 4...

<code>
Public Function BinToHex(ByVal NumToConv As String) As String
Dim i As Long
Dim lPos As Long
Dim sResult As String
Dim sByte As String
Dim Data() As Byte
Dim Value As Long
If Len(NumToConv) Mod 4 Then
NumToConv = String(4 - (Len(NumToConv) Mod 4), "0") & NumToConv
End If
sResult = Space(Len(NumToConv) / 4)

For i = 1 To Len(NumToConv) Step 4
Data = StrConv(Mid$(NumToConv, i, 4), vbFromUnicode)
Value = ((Data(0) = 49) And 8) + ((Data(1) = 49) And 4) + ((Data(2) = 49) And 2) + ((Data(3) = 49) And 1)
lPos = lPos + 1
Mid$(sResult, lPos) = Hex$(Value)
Next
BinToHex = sResult
End Function
</code>

/Johan


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 612
27 953
271 709
6 573
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies