当前位置:首页 » 文件管理 » 编程ftp哪个动作好

编程ftp哪个动作好

发布时间: 2022-06-25 02:56:07

1. ftp的详细用法

FTP客户端软件的用法

下面是我从网上摘录的有关FTP客户端软件CUTE FTP和FLASHFXP的简单用法,它们的基本用法大同小异,其它FTP客户端软件的用法也与此类同:

一、CUTE FTP的简单用法:
安装好Cute FTP后运行打开,在弹出的EDIT HOST窗口中(默认为如此,否则按F4键会弹出来)单击Add site,在site lable中填一个任意的标识名,在host address中填主机地址(服务器域名或者IP地址,因为我的ADSL的IP地址每次会变,所以每次要等我临时通知),在user id 中填您申请的帐号(即我给你设定的帐号,在password中填您的密码(即我给你设定的密码),其它项留默认即可,按确定后在出现的ftp site manager框的右面可见到刚才在site lable中填的标识名,之后双击此标识名便自动连接到服务器上了,待出现欢迎提示框后单击下方的确定,这时左方是您的本地硬盘,右方是服务器硬盘,您将左方的文件用鼠标选定后直接拖到右方即可上传

二、CUTE FTP的详细用法:
1、设置
(1) 启动CuteFTP,激亮"FTP sites",单击"Add folder"按钮;

(2)在"create new folder"中填入新文件夹名称,如"旭日",然后按"OK";

(3)点亮"旭日"文件夹,单击"add site"按钮;

(4)"site label"中可填入你自己对此站点的名称,如“旭日工作室”,"host address"填写要上传服务器地址,如"ftp.533.net"。"user id"填入您的用户名或"anonymous"(匿名FTP),"password"输入您的密码。如果您是帐号用户,"login type"选择normal,若是匿名FTP,则选择Anonymous。remote directory/local directory填写登录时ftp主机/用户PC机的起始目录,设置好之后请按"确定";

(5)现在,您已经完成了客户端ftp软件的设置,点亮所要连接的主机,单击connect按钮,即可连接上ftp主机。 sitelabel可以不填 Host Address: 可填IP或域名地址

2、操作:
连接上网后,便会出现一个窗口。左边是本地PC机目录下的内容,右边是FTP主机预设的目录下的内容。单击功能菜单或按鼠标右键,都有一些命令可进行文件/目录的操作,也可通过拖拉的动作来进行。

三、Flashfxp的用法简介:
FlashFXP是一款功能强大的FXP/FTP软件,集其他优秀FTP软件的优点于一身。目前使用者越来越多,大有超过传统的CuteFTP之势,成为网站站长们的必备工具之一。
一、功能介绍
安装就不用我说了吧,现在我们就来看FlashFXP的主界面。
FlashFXP分三个主要部分:菜单、工作区、信息区。
菜单:
由于上面提供下载的是汉化版,菜单都是中文,所以关于菜单我就先不详述,在下面我会以新建一个FTP连接的实例来讲解FlashFXP的具体用法。然后在第三部分再详细介绍菜单中的重要部分,因为其中很多应用是高级操作,而且在用过之后再来看菜单,有事半功倍之效。
工作区:
工作区分为左右两个部分,第一个部分的上部分别有一排工具按钮�图2和图3。请注意按钮,它是用来切换本地浏览器端和服务器端的,在本地状态下,工具栏下面会列出所在目录中的文件。按一下这个按钮,它会变成,这时下方会变为服务器端的文件,如果这时已经与服务器连接的话否则将显示为空白。这个按钮的作用是传送你在本地端选定好的一个或多个文件(夹)到服务器端。这个按钮是用来比较本地端与服务器端文件的,这是一个很方便的功能。例如点击它以后,FlashFXP会自动比较本地端与服务器端当前目录下的文件,发现有相同的文件就会自动在本地端过滤掉,这时在两端的窗内只剩下不同的文件,但那些相同的文件实际上都还在,只是被FlashFXP隐藏起来了,以方便你清楚地把没上传的文件上传,其实你按上方的刷新按钮,它们就都回来了。在这个按钮右边还有一个下拉箭头,你可以选择精确比较、模糊比较、高级,在高级中你可以设置比较的方式,如忽略文件扩展名、比较名称和大小、选择非匹配(其它的按钮都很简单,且有中文提示,就不骗稿费了)。
信息区:
信息区也分为两个部分,左边是上传队列区,将会显示你要上传的文件信息,右边是上传状态窗口,将会显示与服务器的连接信息、FTP服务器的相关信息、文件上传的状态等等。双击状态窗口,它将以新窗口的方式出现。
另外,在窗口的最下面还有状态栏,它会显示上传或下载文件的动态百分比进度、完成大小的数字、当前文件剩余时间,所有队列文件的剩余时间等。
二、实战
现在以我的网站为实例来讲解如何用FlashFXP建立一个FTP连接并上传文件到自己的网站上。
基本资料(在你申请免费或付费网站空间的时候会从提供商处得到这些资料)
FTP服务器地址:homeftp.etang.com
用户名:onlylogo
密码:123456(当然是假的啦^o^)
1.建立FTP连接
第一步当然要先与自己的网站服务器连接上,所以我们要先输入一些资料。首先在菜单栏中点击“站点”,再选“站点管理器”,或用快捷键F4直接打开(图4)。
点“新建站点”按钮来新建一个FTP连接,这时会弹出对话框要求你输入站点名,比如输入“ONLYLOGO”,确定后你会看到站点管理器左边的站点列表框中出现了ONLY LOGO这个名字,而右边原来是灰色的区域也变为可写状态。此时根据网站的相关信息将它们输入到相应的框中,如图5所示。点击“应用”按钮,这样网站的连接就建立好了。
2.连接与上传
在站点信息填好后有两种方法可以实现服务器的连接,在站点管理器中的站点列表框选中你的网站,再点“连接”按钮;或者在FlashFXP主界面中点按钮,然后在弹出的下拉菜单中选中ONLY LOGO。这样FlashFXP会自动登录到你的网站(图6)。
在本地端选择好你要上传文件的位置并选中它(支持多选和文件夹选取),本例中本地端是在窗口的左边,把选好的文件拖动到右边的服务器端方框内,此时信息区上传文件列表框会自动列出这些文件,表示它们正等待上传。这时按上方的按钮就开始上传了!
还有一种更简捷的方法,在选好上传文件后,直接点上方的“传送选定”按钮就开始传送了。
这样你已经可以完成整个站点的上传了。
三、高级进阶
现在我来讲一讲FlashFXP的高级应用。
这里我只讲菜单栏中的一些很重要的功能和选项,比较简单的就不一一解释。
1.“FTP”→“在传送完成时”子菜单下有六个选项,分别是“空闲”、“断开站点”、“退出FlashFXP”、“挂断”、“挂断然后退出FlashFXP”、“挂断然后关闭计算机”、“关闭计算机”、“注销计算机”,这个功能可以让电脑自动下载,然后执行你所要的操作。更详细的设置可以到“工具”→“调度”中设置。
2.“站点”→“导入站点”子菜单可以让你从FlashFXP的旧版本以及BulletProof、CuteFTP、LeapFTP、FTP Explorer、WS_FTP等常用FTP软件导入站点,极大提高了自身的兼容性。
3.在“显示”菜单中你可以设置FlashFXP的版面结构,如显示区是在窗口的上面还是下面,是否切换树状显示等等,你试一试就知道了。
4.最重要的菜单是“选项”的参数选择,按F6你可以直接打开这个窗口(图7)。
在“配置FlashFXP”窗口中有六个选项卡,分别是“常规”、“选项”、“高级”、“传送”、“代理/防火墙/标识”、“显示”。下面我们来一一介绍它们。
①常规
此处可以设置E-mail地址、默认下载路径、日志名称文件等。下半部分是比较重要的参数,“连接超时”是设置一次连接的时间限制,比如设置为30,意思就是如果30秒还没有连接上,那么这次连接就中止,重新开始下一次连接。“重试延迟”意思是如果本次连接超过规定时间后,在多少秒后开始再次连接。“向后滚动缓冲”是设置FlashFXP的连接信息栏中显示信息的最大行数。“延迟数”是设置多少次连接失败后FlashFXP停止连接的尝试。
②选项
“允许反空闲”设置FlashFXP是否防止服务器断开连接。“弹出登录信息窗口”是设置与服务器连接后是否弹出一个窗口,这个窗口将会显示服务器上的信息,比如IP地址、端口号、用户名和密码的验证信息以及其它一些说明信息。在下面的“确认”栏中,你可以设置在哪些情况下FlashFXP会要求你对所进行的操作进行确认(图8)。
③高级
这里有两个较重要的选项。一个是“任务栏按钮标题”,它设置在任务栏上,当你用鼠标指向FlashFXP按钮时出现的提示信息。具体用法点击参数输入框右边的帮助按钮可以看到,注意并不是下面的帮助按钮哦。
另一个是最下面部分,设置当你在本地端或远程服务器端双击时FlashFXP会进行什么样的操作;当你拖动文件时,又会执行什么样的操作。
④传送
设置传送完成时是否要刷新当前目录,是否要限制上传或下载的速度以及这个速度的大小。“上传文件名称转换”设置在上传和下载时,是不是要把文件的名称改成大写或小写或首字母大写。
⑤代理/防火墙/标识
这项一般用户用不到,它用于设置代理服务器地址,防火墙端口及标识服务器登录信息。
⑥显示
设置文件排列的顺序,是否在标题中显示站点名称等与显示有关的选项。

2. 用C语言写一个FTP的客户端程序,需要了解哪些知识

一、需要的知识点:
1、SOCKET技术,网络编程的基本功能
2、FTP
3、如果需要自己写,可能需要熟悉各个网络框架
二、编写FTP所需要掌握的框架
1、wininet
2、libcurl

3. 网络编程案例ftp客户端怎么连接服务器

示例:创建一个http get请求,序列化后的请求应该通过写入流(write stream)发送。
CFStringRef requestHeader = CFSTR("Connection");
CFStringRef requestHeaderValue = CFSTR("close");
CFStringRef requestBody = CFSTR("");

CFStringRef url = CFSTR("http://www..com/");
CFStringRef requestMethod = CFSTR("GET");

CFURLRef requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, NULL);
CFHTTPMessageRef request = CFHTTPMessageCreateRequest(kCFAllocatorDefault, requestMethod, requestURL, kCFHTTPVersion1_1);
CFHTTPMessageSetBody(request, requestBody);
(request, requestHeader, requestHeaderValue);

CFDataRef serializedRequest = (request);

创建HTTP相应的步骤与创建请求的方法差不多,不同之处是用CFHTTPMessageCreateResponse函数代替CFHTTPMessageCreateRequest。
可以使用一个CFReadStream对象来序列化并发送CFHTTP请求。当使用CFReadStream对象时,打开读取流的同时消息会被序列化并发送,这样可以方便地获取响应。如下:
CFHTTPMessageRef request = CFHTTPMessageCreateRequest(kCFAllocatorDefault, requestMethod, requestURL, kCFHTTPVersion1_1);
CFHTTPMessageSetBody(request, requestBody);
(request, requestHeader, requestHeaderValue);
CFReadStreamRef readStream = (kCFAllocatorDefault, request);
CFReadStreamOpen(readStream);

调用CFReadStreamCopyProperty 可以从读取流获取响应消息,代码如下:
CFHTTPMessageRef response = CFReadStreamCopyProperty(readStream, );
使用函数获得完整的状态行,如下:
CFStringRef statusLine = (response);
或者,使用函数获取状态码,如下:
UInt32 errCode = (response);

为了获取返回的数据,可以使用CFReadStreamSetClient方法设置回调函数,将readStream加到run loop中。在回调函数将每次读取的数据存起来(比如,有一个NSMutableData类型的变量data),读完后处理数据,代码如下:
if( == eventType)
{
UInt8 buff[255];
int length = CFReadStreamRead(stream, buff, 254);
[data appendBytes:buff length:length];

if(kCFStreamEventEndEncountered == eventType)
{
//读取已完成,处理读取的数据
}
}

如果接收数据是中文字符串,注意在创建NSString时选择编码,比如UTF8或GB2312编码,如下所示:
NSString *string = [[NSString alloc] initWithData:data encoding:0x80000632];//GB2312编码
当使用创建读取流时,流的重定向默认是被禁止的。如果请求连接被重定向,会导致一个错误,它的状态码为300~307。如果收到一个重定向错误,需要关闭这个流,然后重新创建一个流,启用重定向并打开流。如下:
CFReadStreamRef readStream = (kCFAllocatorDefault, request);
if(CFReadStreamSetProperty(readStream, , kCFBooleanTrue) == false)
{
//出错处理
}
CFReadStreamOpen(myReadStream);

2.CFFTP
CFFTP也使用CFReadStream来传送FTP数据。使用CFReadStreamCreateWithFTPURL方法来创建FTP请求,这样会同时创建一个CFReadStreamRef对象来读取FTP服务器发送的数据,代码如下:
CFStringRef url = CFSTR("ftp://ftp.example.com/file.txt");
CFURLRef requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, NULL);
CFReadStreamRef readStream = CFReadStreamCreateWithFTPURL(kCFAllocatorDefault, requestURL);
下一步,使用CFReadStreamSetClient方法设置回调函数来读取数据,然后把readStream加到程序的run loop中。
如果FTP需要使用用户名和密码认证,通过CFReadStreamSetProperty方法设置kCFStreamPropertyFTPUserName和kCFStreamPropertyFTPPassword属性。
要将文件下载到本地,可以使用CFWriteStreamCreateWithFile方法创建一个指向本地文件的写入流,将接收到的数据写入。
上传文件和下载文件差不多,只不过把读取流和写入流反过来用,使用CFWriteStreamCreateWithFTPURL方法创建写入流,使用CFReadStreamCreateWithFile创建读取流。
创建远程目录的方法与上传文件类似,只不过将CFURL对象设置一个路径而不是文件。
获取目录列表的方法与下载文件类似,数据读取到缓存后使用,方法对读取进行解析。

3.NSURLConnection
CFNetwork是比较底层的接口,虽然用起来比较灵活,但并不好用。多数程序仅仅需要创建简单的请求来获取互联网上的一个文件,那么使用NSURLConnection要更加方便,因为不用跟套接字、流还有回调函数打交道,取而代之的是更熟悉的委托机制。
创建一个NSURL对象:
NSNRL *url = [NSURL URLWithString:@"http://www..com/"];
NSURL对象是用来创建NSURLRequest对象的,如下:
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url cachePolicy::60.0];

可选的缓存策略有以下几种。
(1):使用相关协议默认缓存策略。
(2): 无论本地缓存是什么,请求都要重新加载数据。
(3):不仅要忽略本地缓存,在协议允许的情况下也要忽略远程代理或中间件的缓存。
(4):优先使用缓存数据,缓存不存在时再去加载请求。
(5):只加载缓存数据,缓存中不存在时也不请求,可理解为离线模式。
(6): 缓存中的数据没有过期时才加载缓存中的数据,否则请求数据并刷新缓存。

创建完NSURLRequest对象后就可以创建NSURLConnection对象了,如下:
NSURLConnection *connection = [[NSRULConnection alloc] initWithRequest:request delegate:self];

这个是异步调用,NSURLConnection会在后台发送请求,通过设置委托参数,有数据时会收到通知。由一些委托方法来处理连接是过程中的不同事件。
当服务主机有响应将要开始发送数据时,didReceiveResponse:方法会被调用。这里可以做一些初始化的工作,比如有一个NSMutableData类型的data对象来存储数据,在这里可以把对象长度设为0,如下所示
-(void) connection:(NSURLConnection *)connection didReceiveRespose:(NSURLResonse *)response
{
[data setLength:0];
}
当接收到数据时,didReceiveData:方法会被调用。这里可以把数据加到NSMutableData对象的后面,如下:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)incomingData
{
[data appendData:incomingData];
}

当数据加载完成时会调用connecitionDidFinshLoading:方法,处理传入的数据。这里以字符串处理为例,示例应用中传入的可能是图片或其他任何类型的对象。

- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(string);
[data release];
}

连接或传送数据失败时,didFailWithError方法会被调用,如下:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
NSLog(@"query failed with error:%@", [error localizedDescription]);
[data release];
}

4. VB与FTP编程

建议楼主用winsock连接FTP服务器,发送FTP命令来实现交互,另外说明下,目录的获取与文件的传输是另开端口进行的,以下是命令表
ftp协议命令字(转)

命令 描述
ABOR 中断数据连接程序
ACCT <account> 系统特权帐号
ALLO <bytes> 为服务器上的文件存储器分配字节
APPE <filename> 添加文件到服务器同名文件
CDUP <dir path> 改变服务器上的父目录
CWD <dir path> 改变服务器上的工作目录
DELE <filename> 删除服务器上的指定文件
HELP <command> 返回指定命令信息
LIST <name> 如果是文件名列出文件信息,如果是目录则列出文件列表
MODE <mode> 传输模式(S=流模式,B=块模式,C=压缩模式)
MKD <directory> 在服务器上建立指定目录
NLST <directory> 列出指定目录内容
NOOP 无动作,除了来自服务器上的承认
PASS <password> 系统登录密码
PASV 请求服务器等待数据连接
PORT <address> IP 地址和两字节的端口 ID
PWD 显示当前工作目录
QUIT 从 FTP 服务器上退出登录
REIN 重新初始化登录状态连接
REST <offset> 由特定偏移量重启文件传递
RETR <filename> 从服务器上找回(复制)文件
RMD <directory> 在服务器上删除指定目录
RNFR <old path> 对旧路径重命名
RNTO <new path> 对新路径重命名
SITE <params> 由服务器提供的站点特殊参数
SMNT <pathname> 挂载指定文件结构
STAT <directory> 在当前程序或目录上返回信息
STOR <filename> 储存(复制)文件到服务器上
STOU <filename> 储存文件到服务器名称上
STRU <type> 数据结构(F=文件,R=记录,P=页面)
SYST 返回服务器使用的操作系统
TYPE <data type> 数据类型(A=ASCII,E=EBCDIC,I=binary)
USER <username>> 系统登录的用户名

标准 FTP 信息如下:

响应代码 解释说明
110 新文件指示器上的重启标记
120 服务器准备就绪的时间(分钟数)
125 打开数据连接,开始传输
150 打开连接
200 成功
202 命令没有执行
211 系统状态回复
212 目录状态回复
213 文件状态回复
214 帮助信息回复
215 系统类型回复
220 服务就绪
221 退出网络
225 打开数据连接
226 结束数据连接
227 进入被动模式(IP 地址、ID 端口)
230 登录因特网
250 文件行为完成
257 路径名建立
331 要求密码
332 要求帐号
350 文件行为暂停
421 服务关闭
425 无法打开数据连接
426 结束连接
450 文件不可用
451 遇到本地错误
452 磁盘空间不足
500 无效命令
501 错误参数
502 命令没有执行
503 错误指令序列
504 无效命令参数
530 未登录网络
532 存储文件需要帐号
550 文件不可用
551 不知道的页类型
552 超过存储分配
553 文件名不允许

5. ftp服务器编写的过程,使用c++,最好有具体过程,命令交互什么的

1、c++基础一定得好。
2、学习网络编程,主要是TCP方面
3、详细研究下FTP协议。

6. FTP编程前景如何


在海量的小文件传输的时候,20端口的控制命令传输占用的时间和UI的时间已经可以同文件真正的传输时间相比拟了,所以性能提高很麻烦,偏偏Basic在性能上不占优势。

此外如果是VB6的控件,由于VB的市场同VC JAVA和Delphi相比暂时还是处于劣势,一些C写的GNU FTP lib已经有不小的空间了。所以。。。

7. FTP api编程

建议楼主看下MSDN,楼主既然会用ASM,应该看得懂
HINTERNET InternetConnect(
__in HINTERNET hInternet,
__in LPCTSTR lpszServerName,
__in INTERNET_PORT nServerPort,
__in LPCTSTR lpszUsername,
__in LPCTSTR lpszPassword,
__in DWORD dwService,
__in DWORD dwFlags,
__in DWORD_PTR dwContext
);

8. ftp如何使用

ftp
是文件传输协议 你要利用协议编程]?

还是用工具

....................

可以使用ftp下载的。
这要看提供者采用什么方式了
比如有这样 http://123.45.6.7/a.rar
也有这样 ftp://123.45.6.7/a.rar

多数网上下载的 都用第一种 管理简单 用户管理是用网页实现的
用第二中的 可以在登陆时进行用户管理 是登陆服务器实现的 典型管理ftp服务器的软件是server u 可以像文件夹一样的管理下载

9. FTP协议编程的一般步骤

你问的问题有深度
你去http://bbs.chinaitlab.com/
网上去找一下吧,里面很多高手的

10. 【编程】编程作业(关于ftp网络)

是建立一个盘符,然后把你网盘内的文件映射到那个盘内么?还要用FTP的API实现?

热点内容
单独编译内核模块 发布:2025-01-16 18:54:26 浏览:802
js解压字符串 发布:2025-01-16 18:54:17 浏览:482
php怎么开启服务器 发布:2025-01-16 18:52:53 浏览:769
亿速云北京三区服务器云主机 发布:2025-01-16 18:52:01 浏览:359
我的世界网易服务器做家园 发布:2025-01-16 18:50:33 浏览:553
虚拟存储安全教程 发布:2025-01-16 18:49:48 浏览:574
vps配置ftp 发布:2025-01-16 18:49:02 浏览:157
qtc比python好用 发布:2025-01-16 18:39:48 浏览:488
电脑有免费服务器吗 发布:2025-01-16 18:35:28 浏览:220
sql生成唯一 发布:2025-01-16 18:35:25 浏览:223