当客户端使用TCP / IP向c#中的服务器发送请求时,我想发送一些数据和图像

时间:2016-04-25 06:11:20

标签: c# sockets tcp

我是套接字编程的新手。我做了一个从一个进程到另一个进程的简单消息传输,但现在我想在客户端向服务器发送请求时发送图像+数据。 我只能在一个请求中发送数据或图像,而不是两者。我怎么能做到这一点?。

1 个答案:

答案 0 :(得分:0)

正如在评论中提到的,在TCP / IP的上下文中,所有发送\接收过程都基于流式传输字节数组。 您可以使用以下算法(它不是复制粘贴解决方案):

  1. 创建一些包含数据的自定义类型:可能是字符串,我强烈建议仅将路径字符串存储到原始图像。
  2. class StreamData {string dataPath {get;set;} string imagePath {get;set;} }

    1. 添加另一个将数据(图像,音乐)转换为字节数组的抽象级别类,并获取要转换的数据路径。class StreamConverter{ //some awesome method(string path)}
    2. 然后将此数据发送给客户。也不要忘记客户端如何反序列化/编码这些数据。