快速开发平台中提供了一个全局类来实现对FTP服务器上文件夹的创建、删除,文件的上传、下载、删除等操作,通过类模块 FTPServer 的各种方法和属性来完成FTP文件处理。它是一个全局类,不需要实例化即可使用。
使用前请先确定是否已经有了一个可用的FTP服务器。可先在“FTP服务器参数配置”界面中配置FTP服务器的连接参数。
开发接口
方法名 | 说明 |
---|---|
OpenConnection | 打开到FTP服务器的连接。 参数:ServerAddress, Port, Username, Password,Mode 在此处指定的参数优先于在“FTP服务器参数配置”中指定的参数。 |
CloseConnection | 断开连接。 |
CreateDirectory | 创建文件夹,可以是多级目录,如果目录已存在,则创建时忽略。 |
DeleteDirectory | 删除文件夹,只有文件夹为空时才能删除,如果其中存在文件或子文件夹时则会出错。 |
DeleteFile | 删除文件。 |
FolderExists | 判断指定文件夹是否存在,如存在返回True。 |
FileExists | 判断指定文件是否存在,如存在返回True。 |
FileSize | 返回指定文件的文件大小,以字节(Byte)为单位。 |
ListDirectory | 返回一个Collection集合,其中包含指定目录下所有的文件或子目录,其中子目录以“/”结尾。 |
Rename | 重命名文件或文件夹。OldName必须包含路径,NewName可以没有路径(使用OldName的路径)。 |
DownLoadFile | 下载FTP服务器上的文件至本地。 参数:LocalFile, RemoteFile, TransferMode RemoteFile 服务器上的文件路径名。 LocalFile 保存至本地的文件路径名,路径不存在时会自动创建。 TransferMode 传输模式,是以文本传输还是二进制传输。 |
UploadFile | 上传本地文件至FTP服务器。 参数:LocalFile, RemoteFile, TransferMode LocalFile 本地文件路径名。 RemoteFile 上传到服务器的文件路径名,路径不存在时会自动创建。 TransferMode 传输模式,是以文本传输还是二进制传输。 |
常量枚举
常量 | 值 | 说明 |
---|---|---|
FtpModeEnum.ftpModePORT | 1 | 主动模式 | FtpModeEnum.ftpModePASSIVE | &H8000000 | 被动模式 |
FtpTransferTypeEnum.ftpTransferTypeAscII | 1 | AscII文本传输模式 |
FtpTransferTypeEnum.ftpTransferTypeBinary | 2 | 二进制传输模式 |
提示 文件路径分隔符使用正斜杠(/)、反斜杠(\)作为路径分隔符都可以。
示例
'文件下载示例:通过“FTP服务器参数配置”界面指定服务器参数 Sub FTPDownloadFile() With FTPServer .OpenConnection .DownloadFile "AAA\BBB\CCC\A.jpg", "C:\testA.jpg" .DownloadFile "AAA\BBB\CCC\B.jpg", "C:\testB.jpg" .CloseConnection End With End Sub '文件下载示例:通过 OpenConnection 方法的参数指定服务器参数 Sub FTPDownloadFile() With FTPServer .OpenConnection "192.168.1.1", , "用户名", "密码" .DownloadFile "AAA\BBB\CCC\A.jpg", "C:\testA.jpg" .DownloadFile "AAA\BBB\CCC\B.jpg", "C:\testB.jpg" .CloseConnection End With End Sub '文件上传示例 Sub FTPUploadFile() With FTPServer .OpenConnection .UploadFile CurrentProject.Path & "\A.jpg", "AAA\BBB\CCC\A.jpg" .UploadFile CurrentProject.Path & "\B.jpg", "AAA\BBB\CCC\B.jpg" .CloseConnection End With End Sub
修订记录
2021-11-23 v2.6.4.542 移除FindFirst、FindNext、FindEnd方法。
2022-04-22 v2.6.6.556 新增ListDirectory方法。