-
HEX umwandeln
Hallo Community,
ich bin vor ein kleines Problem gestoßen. Ich möchte gerne einen HEX-String in einen ASCII-String umwandeln.
Ich vermisse hierbei eine Funktion, die es in anderen Programmierumgebungen/Programmiersprachen gibt. (Bsp.: C#)
Bin ich nur zu blöd, dass ich diese Funktion in DataFlex nicht finde, oder muss ich hier selber ein Funktion schreiben?
Hat schon jemand eine solche Funktion geschrieben? Wie gehe ich hier am besten vor, oder noch besser, kann jemand ein Beispiel posten?
LG Markus Haslinger
-
Re: HEX umwandeln
Hi,
versuch es mal mit der Funktion "ToDec". Diese musst du in deinen Source schreiben, da Sie nicht in VDF drinne ist (Stand VDF 15.0). Einfach den Hex-String übergeben und du bekommst den Decimal Wert heraus.
[code]
// Function : ToDec
// Purpose : Converts a hex string to a decimal integer
Function ToDec String sValue Returns Integer
String sHex sChar
Integer iValue iCount iTotal
Move (UpperCase(sValue)) to sValue
Move "ABCDEF" to sHex
While (Length(sValue))
Move (Right(sValue,1)) to sChar
If (sHex contains sChar) Move (Ascii(sChar)-55) to iValue
Else Move (Integer(sChar)) to iValue
If (iCount = 0) Move (iTotal+iValue) to iTotal
Else Move (iTotal+(iValue*(iCount*16))) to iTotal
Increment iCount
Move (Remove(sValue,Length(sValue),1)) to sValue
Loop // While (Length(sValue))
Function_Return iTotal
End_Function // ToDec
[/code]
Dann noch den Decimal Wert mit der Funktion Character in ein Ascii Zeichen umwandeln.
[code]
String sHex sZeichen
Integer iDec
Get ToDec sHex to iDec
Move (Character(iDec)) to sZeichen
[/code]
-
Re: HEX umwandeln
Es gibt eine frei herunterzuladende Library unter:
[URL]http://www.dataaccess.eu/Normal.asp?pageid=1971[/URL]
Matthias
-
Re: HEX umwandeln
Danke an euch beide.
Das war genau das, was ich gesucht habe. :)