【发布时间】:2011-06-07 13:33:05
【问题描述】:
我有一个 TCP 套接字连接,我在其中获取字节数组数据,我必须对其进行解密然后格式化,所以我正在寻找一种简单的方法来读取这个结果字节数组,我可以轻松地遍历导出它的元素我需要一个类型或变量等,为了更好地解释它,请参见下面的示例:
假设我们有字节数组(数据包是小端的,这只是假设的例子):
01 02 00 03 74 00 74 00 69 00
我想把前 2 个字节放到一个 int 中,接下来的 2 个字节放到另一个 int 中,然后作为字符串休息。
所以它看起来像这样翻译:
int first = 258;
int seconnd = 3;
string rest = "tti"
我不是 java 人,但是在 java 上,我注意到有人像这样直接读取数据包的地方很有趣:
messageSize = readH(); // for 2 bytes
key = readH(); // for 2 bytes
message = readS(); // read as string
我想知道在 c# 或任何其他资源中是否有类似的预制功能可以帮助我更好地完成这项任务?
【问题讨论】:
-
你读的怎么样?
-
@Nik 我还没有决定,因为我不确定我必须简化阅读的选项,目前只是为了调试以确保我得到正确的数据我得到它像这样
byte[] bytes = new byte[1024]; client.Receive(bytes);,因为我有几个步骤,比如初始连接回复,然后是你好回复,然后是登录回复......我将不得不格式化我想要寻找一些帮助/建议的字节。
标签: c# sockets bytearray tcpclient