这原始的单片机发的 30 32 32 37 5A 30 32 36 35 36 36 35 35 31 FF FF
这是C#收到的 0227Z026566551??
可以看到不是以ASSIC码显示....这是程序...怎么转呀
string read = Port.ReadExisting();
this.textBoxRead.Text = read;
这是C#收到的 0227Z026566551??
可以看到不是以ASSIC码显示....这是程序...怎么转呀
string read = Port.ReadExisting();
this.textBoxRead.Text = read;
显示成30 32 32 37 5A 30 32 36 35 36 36 35 35 31 FF FF 是吧?
http://blog.ednchina.com/azmao/141837/message.aspx
private static string getByteStr(byte[] array)
{
string retstr = null;
for (int i = 0; i < array.Length; i++)
{
retstr += (char)array[i];
}
return retstr;
}
输出:0227Z026566551??
最终想显示到this.textBoxRead.Text 里...请高手帮帮忙...小弟是初学都string read = Port.ReadExisting();
this.textBoxRead.Text = read;
是C#收到的 0227Z026566551??
我要实现C#显示 30 32 32 37 5A 30 32 36 35 36 36 35 35 31 FF FF自已顶下哈.......
this.textBoxRead.Text = read;
LZ用这个试试,
this.textBoxRead.Text = read.ToString("x")//转为16进制
// 接收缓冲区中数据的字节数
int int_Len = serialPort1.BytesToRead; // 接收数据
byte[] bytes = new byte[int_Len];
serialPort1.Read(bytes, 0, int_Len);
'0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; public static string ToHexString(byte[] bytes)
{
char[] chars = new char[bytes.Length * 2];
for (int i = 0; i < bytes.Length; i++)
{
int b = bytes[i];
chars[i * 2] = hexDigits[b >> 4];
chars[i * 2 + 1] = hexDigits[b & 0xF];
}
return new string(chars);
}
// 接收缓冲区中数据的字节数
int int_Len = serialPort1.BytesToRead;
// 接收数据
byte[] bytes = new byte[int_Len];
serialPort1.Read(bytes, 0, int_Len);Console.WriteLine(BitConverter.ToString(bytes).Replace('-', ' '));
byte[] byts = Encoding.ASCII.GetBytes(read);
Console.WriteLine(BitConverter.ToString(byts).Replace('-',' '));