数字转换16进制。前提是你输入的必须是数字,而不是别的东西。
private string StringToHexString(string s)//数字转换16进制
{
long Num = Convert.ToInt32(s);//防止溢出
string str = Convert.ToString(Num, 16);
string Msg = "0x" + (str.Length == 1 ? "0" + str : str);//转换成指定格式
return Msg;
}
字符串转换16进制,这里参考了很多其他人的方法。可以用StringBuilder,也可以用逐个转化再存储。看个人喜好。
public string ToStrFromByte(byte[] byteDatas)//字符串转化16进制
{
string Msg = "";
//StringBuilder builder = new StringBuilder();
for (int i = 0; i < byteDatas.Length; i++)
{
string str = Convert.ToString(byteDatas[i], 16);
Msg = "0x" + (str.Length == 1 ? "0" + str : str);//转换成16进制格式
//builder.Append(string.Format("{0:X2} ", byteDatas[i]));
}
return Msg;
}
最后实现效果(以自己学习做的串口程序为例):