我在寻找通过TCP发送整个文件夹的方法时遇到了麻烦。我最初的想法是发送方发送一个字符串,其中包含给定文件的路径,如C://MyFolder/MySubFolder/MyFile,然后接收方创建文件夹和子文件夹。然后发送方继续发送包含其目录的文件。
我认为这是不言而喻的,这不是做这件事的最好方法。有没有更好的方法?
编辑:
对不起,如果我有点含糊。我有一个文件传输应用程序,可以发送/接收文件,我想添加一个发送整个文件夹的方法。
您需要某种文件传输协议(即FTP)。在发送端使用一个易于设置的c# FTP服务器库(即:http://sourceforge.net/projects/csftpserver/),在客户端使用FtpWebRequest
来获取整个文件夹结构。
使用著名的归档方法(zip, rar…)并传输数据。在另一边提取。这样可以保存:
- 实现容易出错递归模式。 <
- 你的带宽/gh>
您查看过用于此目的的现有协议吗?似乎你想克隆FTP,也许在两者之间有一个像tar这样的流机制。
如果你考虑压缩/压缩:你可以看一下GZipStream类。
http://www.geekpedia.com/tutorial190_Zipping-files-using-GZipStream.html