除参数 @1 需要指定主机地址以外,其他参数都是可选参数。
被动模式(PASV/Passive mode) 默认为 true 。
其他参数用法请参考 inet.http 构造参数。
FTP文件传输支持库
返回父目录
关闭FTP文件
for(str in ftpFileObject.eachRead() ){
}
var buffer = ..raw.buffer( 1024 * 10 );
for( size in ftpFileObject.eachReadBuffer( buffer ) ){
table.push(,str ) ;
}
读文件,返回文件数据,
可选指定缓冲区长度
读取所有数据
读取所有数据
下载文件数据
参数一必须是使用 buffer 对象
长度参数可选,默认为缓冲区长度.
返回文件大小
返回文件大小
返回文件大小
返回值为math.size64长整数对象
写文件,支持多参数,
返回写入数据的总长度,失败返回空或0
上传文件数据
参数一必须是使用 buffer 对象
长度参数可选,默认为缓冲区长度.
关闭连接
执行 FTP 命令。参数说明:
1. 参数 @commandString 指定 FTP 命令。
2. 可选参数 @flags 指定响应数据传送模式(数值),默认为二进制模式,
指定为 1/*_FTP_TRANSFER_TYPE_ASCII*/ 则使用 ASCII 传送模式。
执行 "LIST", "NLST", "MLSD", "RETR", "STOR", "APPE", "STOU" 等需要数据连接的 FTP 命令时
返回 inet.ftp.file 对象(提供 readAll,eachRead 等方法l), 失败返回 null 。
执行其他仅建立控制连接的 FTP 命令时成功返回服务器响应数据(字符串),失败返回 null 。
创建目录,支持创建多级目录
可以斜杠开头的的路径表示相对于根目录的完整路径
也可使用setCurDir()设定当前目录
创建指定路径的父目录
删除文件
删除目录
下载前可使用 setCurDir 方法设定服务端当前目录位置。
也可以斜杠开头的的路径表示相对于根目录的完整路径
ASCII 模式下载
BINARY 模式下载
for(dirName,fileName,findData,curDir in inetFtpObject.eachDir("\")){
if( !fileName ){
io.print("目录名",dirName);
}
else{
io.print("文件名",fileName);
}
/*curDir为当前目录
如果当前是一个文件请忽略dirName参数
如果当前是一个目录,fileName为空*/
}
inetFtpObject.enumDir("\","*.*",
function(dir,fileName,fullpath,findData ){
io.print( fileName?"文件":"目录",fullpath )
return true;/*返回false停止*/
}
);
返回服务器上的当前目录,该函数保证返回的目录尾部是斜杠
获取服务器最后发送的数据,成功返回字符串。
调用此函数等价于调用 inet.lastResponse 函数。
二进制只读模式打开 FTP 文件流。
成功返回 FTP 文件流对象,失败返回 null, 错误信息。
参数 @2 为"rt"则使用文本模式,
打开文件后仅允许读文件,其他所有 FTP 操作被禁用,
直到调用 close 函数关闭文件。
二进制只写模式打开FTP 文件流。
成功返回 FTP 文件流对象,失败返回 null, 错误信息。
参数 @2 为"wt"则使用文本模式,
打开文件后仅允许写文件,其他所有 FTP 操作被禁用,
直到调用 close 函数关闭文件。
文件改名
设置服务器上的当前目录
上传前可使用setCurDir()设定当前目录
也可以斜杠开头的的路径表示相对于根目录的完整路径
ASCII 模式上传
BINARY 模式上传
_FTP_TRANSFER_TYPE_ASCII=1
_FTP_TRANSFER_TYPE_BINARY=2
_FTP_TRANSFER_TYPE_DISABLED=0