On 04/24/2015 11:14 AM, nrgyzer wrote:
Hi,
I'm looking for a function that converts my hex-string to a binary
representation. In Python I write the following:
myHex = "123456789ABCDEF"
myBin = myHex.decode('hex')
But how to do the same in D? Is there any function?
Thanks for suggestions!
Here is one way:
import std.stdio;
import std.format;
string hexToBin(string source)
{
ulong value;
formattedRead(source, "%x", &value);
return format("%b", value);
}
enum string hex = "hex";
string decode(string TargetFormat)(string source)
{
static if (TargetFormat == "hex") {
return hexToBin(source);
} else {
static assert(false,
format("I don't know how to decode to '%s'",
TargetFormat));
return "";
}
}
void main()
{
assert("123456789ABCDEF".decode!hex ==
"100100011010001010110011110001001101010111100110111101111");
}
Ali