当前位置: 技术问答>linux和unix
C实现从远程主机FTP指定文件
来源: 互联网 发布时间:2016-03-31
本文导语: 如何用C实现从远程主机FTP指定文件 哪位大哥有教教我啊,我刚学的,什么都不懂 | 自己实现FTP吗? 什么都不懂还赶提出这样的需求?估计没多少人敢来接这个贴。。。 | 呵...
如何用C实现从远程主机FTP指定文件
哪位大哥有教教我啊,我刚学的,什么都不懂
哪位大哥有教教我啊,我刚学的,什么都不懂
|
自己实现FTP吗?
什么都不懂还赶提出这样的需求?估计没多少人敢来接这个贴。。。
什么都不懂还赶提出这样的需求?估计没多少人敢来接这个贴。。。
|
呵呵,没事,有想法是件好事。
跟一般的C/S程序差不多,只要遵循FTP协议应该就行了。
可以在网上搜一下,有FTP客户端源码。
跟一般的C/S程序差不多,只要遵循FTP协议应该就行了。
可以在网上搜一下,有FTP客户端源码。
|
指定FTP服务器上文件只需要客户段分析用户的输入,将用户输入的文件名作为参数复制到
你定义的BUFFER里,然后填充BUFFER为“RETR filename”,调用write函数将该命令字从
创建SOCKET接口中发送到服务器上,服务器就会解析该命令,并将该文件发送回来。具体细节可能
需要特别处理,比如防止多文件同时传输时由于TCP timewait造成的SOCKET端口创建出错。
FTP的其他命令也是同样的方式来实现的。
最好看个简单的FTP代码,并自己实现他的主要命令。
《TCP/IP详解》中有FTP实现过程的分析,有空去看下。
你定义的BUFFER里,然后填充BUFFER为“RETR filename”,调用write函数将该命令字从
创建SOCKET接口中发送到服务器上,服务器就会解析该命令,并将该文件发送回来。具体细节可能
需要特别处理,比如防止多文件同时传输时由于TCP timewait造成的SOCKET端口创建出错。
FTP的其他命令也是同样的方式来实现的。
最好看个简单的FTP代码,并自己实现他的主要命令。
《TCP/IP详解》中有FTP实现过程的分析,有空去看下。
|
跟普通的c/s编程一样,具体指令可以查看RFC959协义