问题描述:
Byte[] cSerial = new Byte[32];//声明
cSerial =FGetSertial();//赋值
string dtmStr =System.Text.Encoding.Default.GetString(cSerial);//转换为字符串
结果:1054278557\0\0\0\0\0\0\0\0\0\0\0
TextBox1.text=System.Text.Encoding.Default.GetString(cSerial);
结果:1054278557
两种方法获得的结果不同,直接赋给字符串会出现后面的空字节,如何截掉空字节,
让赋给文本款的值和字符串值相同?
异常原因:
实际的字符长度没有32那dtmStr 后面就会有\0出现.
解决方法:
dtmStr =System.Text.Encoding.Default.GetString(cSerial).TrimEnd('\0')这样就去除了