{
int length = address.Length * 2;
string result = "";
for(int i = address.Length -1 ; i >= 0 ; i--)
{
string temp = Convert.ToString(address[i], 16).PadLeft(2, '0');
result += temp;
}
return result.ToUpper();
}
这是C#里的代码 不知道在BCB里如何实现,求大虾支招啊 ~~不甚感激
8 个解决方案
#1
用IntToHex:)
#2
String AdressByteArrayToHexString(byte * address)
{
int length = sizeof(address) ;
String result = "";
for(int i = length -1 ; i >= 0 ; i--)
{
String temp;
temp.sprintf("%02X", address[i]);
result += temp;
}
return result.UpperCase();
}
#3
楼上代码在2009之后肯定编译不过:)
#4
Byte x[4]; //定义字节数组,准备存储浮点数的四个字节
AnsiString asRHex = "" ; //转换后的十六进制数
for(int i=0; i<4; i++)
{
asRHex += IntToHex(x[i],2) ;
}
#5
能解释的更清楚吗?谢谢
#6
String改成AnsiString就行了
#7
2009后字符串使用unicode编码,所以要改成AnsiString
#8
或者是:
temp.sprintf("%02X", address[i]);
改成:
temp.sprintf(L"%02X", address[i]);
temp.sprintf("%02X", address[i]);
改成:
temp.sprintf(L"%02X", address[i]);
#1
用IntToHex:)
#2
String AdressByteArrayToHexString(byte * address)
{
int length = sizeof(address) ;
String result = "";
for(int i = length -1 ; i >= 0 ; i--)
{
String temp;
temp.sprintf("%02X", address[i]);
result += temp;
}
return result.UpperCase();
}
#3
楼上代码在2009之后肯定编译不过:)
#4
Byte x[4]; //定义字节数组,准备存储浮点数的四个字节
AnsiString asRHex = "" ; //转换后的十六进制数
for(int i=0; i<4; i++)
{
asRHex += IntToHex(x[i],2) ;
}
#5
能解释的更清楚吗?谢谢
#6
String改成AnsiString就行了
#7
2009后字符串使用unicode编码,所以要改成AnsiString
#8
或者是:
temp.sprintf("%02X", address[i]);
改成:
temp.sprintf(L"%02X", address[i]);
temp.sprintf("%02X", address[i]);
改成:
temp.sprintf(L"%02X", address[i]);