C#文件通过套接字传输

时间:2013-03-08 14:57:03

标签: c# sockets zip mime-types

我必须创建一个客户端 - 服务器文件同步应用程序...我想知道不是每个文件类型都有单独的mime类型和代码,是否可以只压缩文件类型,传输到服务器并解压缩它?

它是否可行或是否必须为每个文件识别mime类型并为每个mime类型执行代码处理?

1 个答案:

答案 0 :(得分:0)

套接字以字节为单位处理,因此只要客户端和服务器知道协议,发送文件的格式就无关紧要。您可以创建自己的协议。例如,它可能采用{messagelength},{mimetype},{fileasbytearray}的格式。这样,您的客户端知道如何解析最终消息(即前4个字节可能长度(假设为int),然后是您的mimetype,然后是文件的实际字节数组。)

如果您一直使用相同的格式,例如zip文件,那么您不需要mime类型。请记住,如果您计划扩展未来,最好将协议设计为易于扩展。