Information générale
Catégorie:
Codage, syntaxe et commandes
>> The file contains inventory balances, and those are written in a hexadecimal value in the same record. Is there a good way to read that value and convert it into numbers that VFP can understand?
>
>Beats me why they would store an inventory value in hex format. Regardless, given a string S containing a hexadecimal value such as "0A3F".
>
>Function HexToNumeric
>parameter s
>s=Upper(s)
>Local x,p,tot,d
>x=len(s)
>p=1
>tot=0
>do while x > 0
> d=asc(substr(s,x))
> d= iif ( d > 64, d-55, d-48)
> tot = tot + d * p
> p = p * 16 && or you can bitshift left 4 if you want
> x = x - 1
>enddo
>return tot
>
>This doesn't take advantage of some optimization techniques because it was originally written for Foxbase in 1987 and I've been to lazy to update it.
This is good only if the hex value is an integer value. It doesn't work if it is a float.
Vlad
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement