使用套接字 C# WinForms 发送数组
本文关键字:数组 WinForms 套接字 | 更新日期: 2023-09-27 18:02:54
如何发送带有套接字的数组,如java 'outputstream'?你能看到任何演示或示例序列化吗?我可以向我的客户发送带有套接字的简单文本。但是我如何将数组、列表或类发送到我的客户端。我想发送此格式列表数组;
Java的outputstream
也不能做你想做的事,它所能做的就是发送byte[]
这正是C#的套接字类所做的。
则必须使用某种形式的"序列化程序",它将允许您将对象转换为要发送的byte[]
。
内置在.NET中的易于使用的序列化程序是XmlSeralizer
,这将生成一个字符串,然后您可以将其输入到StreamWriter
,该将字符串转换为byte[]
并将其写出到套接字上。另一端将仅使用StreamReader
的反向过程。
如果您不想使用该中间文本步骤,我不建议您使用您在互联网上经常看到的BinaryFormatter
,它非常"脆弱",并且在两端安装不同级别的 .NET Windows 更新最终可能会破坏它。相反,我建议使用第三方二进制序列化程序,如Protobuf-net