数据类型转换保存在byte[]

w4bjx 2010-11-03 02:27:20
各位哥,我要用Byte[]打包一个字符串数据,现在我获得了这字符串的长度(整数类型),要把这个长度以十六进制的形式保存在Byte[]的第一个位置里,请问如何实现?
备注:
这个Byte[]的格式是:[字符串长度(十六进制)]+[数据域(我的字符串)]
...全文
105 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
w4bjx 2010-11-03
  • 打赏
  • 举报
回复
谢谢结贴
ermuzi 2010-11-03
  • 打赏
  • 举报
回复
BYTE就是无符号Char,也可以表示(0xff)0~255以内的整数。长度直接存就可以了,不用管多少进制
w4bjx 2010-11-03
  • 打赏
  • 举报
回复
自己顶
w4bjx 2010-11-03
  • 打赏
  • 举报
回复
因为我要操作的单片机只认十六进制表示的长度值,请问怎么把这个字符串的长度值(int)转换成十六进制并存在Bytes[]里?
w4bjx 2010-11-03
  • 打赏
  • 举报
回复

非常感谢beargo,有没有用于通信的数据打包相关的资料呢,我现在要通过串口与单片机通信
beargo 2010-11-03
  • 打赏
  • 举报
回复
这种字串一般用int值表示够了吧??如果可以.就是前面留四个BYTE作为长度.后面是字符串..
例如:
string value = "测试数据";
byte[] bvalue = System.Text.Encoding.Default.GetBytes(value);
byte[] tmpvalue = new byte[4+bvalue.Length.Length];
BitConverter.GetBytes(bvalue.Length).CopyTo(tmpvalue,0);
bvalue.CopyTo(tmpvalue,4);
这个tmpvalue即可

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧