✨ feat(tsl-api-reference): expand API and module coverage
This commit is contained in:
@@ -6,21 +6,35 @@
|
||||
|
||||
用于连接和登录 FTP 服务器,并管理远程目录、传输文件及发送服务器命令
|
||||
|
||||
<!-- tags: Object FTP 文件传输 文件 目录 路径 file 对象 实例 -->
|
||||
<!-- tags: Object FTP 文件传输 文件 目录 路径 file 对象 实例 创建 生成 构造函数 实例化 new 列表 通配符 -->
|
||||
|
||||
### `create(host)`
|
||||
下列范例使用本机 `127.0.0.1:42121` 的临时 FTP 测试服务
|
||||
|
||||
测试账号为 `tsl_user` 和 `tsl_pass`,测试结束后应清空服务根目录
|
||||
|
||||
### `create()`
|
||||
|
||||
声明:function
|
||||
|
||||
创建 FTP 实例
|
||||
无参数构造函数。创建 FTP 实例,连接参数由实例属性设置
|
||||
|
||||
<!-- tags: Object FTP 文件传输 创建 生成 文件 目录 路径 file 对象 实例 -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `host` | string | 可选。字符串类型。如果指定了Host参数,会自动从配置文件中获取对应设置,自动连接并登录服务器 |
|
||||
### `create(host)`
|
||||
|
||||
声明:function
|
||||
|
||||
构造函数。按 host 配置名称读取连接参数并自动连接和登录服务器
|
||||
|
||||
<!-- tags: Object FTP 文件传输 创建 生成 文件 目录 路径 file 对象 实例 -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------ | ------ | ---------------------------------------------------------------- |
|
||||
| `host` | string | FTP 配置名称。指定后从配置文件读取连接参数并自动连接和登录服务器 |
|
||||
|
||||
### `abort()`
|
||||
|
||||
@@ -37,15 +51,16 @@
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
obj.connect();//连接服务器
|
||||
obj.login();//登录服务器
|
||||
return obj.Abort();
|
||||
//终止连接成功,返回0
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
obj.login();
|
||||
echo obj.abort(), "\n";
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `changeDir(a_dir_name)`
|
||||
@@ -58,8 +73,8 @@ return obj.Abort();
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------ | ------ | ---------------------------------- |
|
||||
| `a_dir_name` | string | string,字符串类型,要切换到的目录 |
|
||||
|
||||
返回:any
|
||||
@@ -67,16 +82,23 @@ return obj.Abort();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
obj.connect();//连接
|
||||
obj.login();//登录
|
||||
obj.changedir('/test');//将FTP服务器上的当前目录更改为"/test"
|
||||
return obj.RetrieveCurrentDir();
|
||||
//修改成功,当前目录应为"/test"
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
obj.login();
|
||||
obj.makeDir("tsl-change-dir");
|
||||
echo obj.changeDir("tsl-change-dir"), "\n";
|
||||
echo obj.retrieveCurrentDir, "\n";
|
||||
obj.changeDirUp();
|
||||
obj.removeDir("tsl-change-dir");
|
||||
obj.abort();
|
||||
// 输出:
|
||||
// 0
|
||||
// /tsl-change-dir/
|
||||
```
|
||||
|
||||
### `changeDirUp()`
|
||||
@@ -94,17 +116,23 @@ return obj.RetrieveCurrentDir();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
obj.connect();//连接
|
||||
obj.login();//登录
|
||||
obj.changedir('/test');//将FTP服务器上的当前目录更改为"/test"
|
||||
obj.changeDirUp();//跳转到当前目录的上一级目录"/"
|
||||
return obj.RetrieveCurrentDir();
|
||||
//跳转成功,当前目录应为"/"
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
obj.login();
|
||||
obj.makeDir("tsl-change-dir-up");
|
||||
obj.changeDir("tsl-change-dir-up");
|
||||
echo obj.changeDirUp(), "\n";
|
||||
echo obj.retrieveCurrentDir, "\n";
|
||||
obj.removeDir("tsl-change-dir-up");
|
||||
obj.abort();
|
||||
// 输出:
|
||||
// 0
|
||||
// /
|
||||
```
|
||||
|
||||
### `connect()`
|
||||
@@ -122,13 +150,15 @@ return obj.RetrieveCurrentDir();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
return obj.connect();
|
||||
//连接成功,返回0
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
echo obj.connect(), "\n";
|
||||
obj.abort();
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `crc(file_name, start_point, end_point)`
|
||||
@@ -141,11 +171,11 @@ return obj.connect();
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `file_name` | string | 字符串类型,指定的文件名 |
|
||||
| `start_point` | int64 | 整数类型,计算CRC值的文件其实位置,默认为0 |
|
||||
| `end_point` | int64 | 整数类型,计算CRC值的文件末尾位置,默认为0,当指定为0时,EndPoint认为是文件长度 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------- | ------ | ------------------------------------------------------------------------------- |
|
||||
| `file_name` | string | 字符串类型,指定的文件名 |
|
||||
| `start_point` | int64 | 整数类型,计算CRC值的文件其实位置,默认为0 |
|
||||
| `end_point` | int64 | 整数类型,计算CRC值的文件末尾位置,默认为0,当指定为0时,EndPoint认为是文件长度 |
|
||||
|
||||
返回:int64
|
||||
|
||||
@@ -159,8 +189,8 @@ return obj.connect();
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ------ | ---------------------------------- |
|
||||
| `file_name` | string | 字符串类型,指定要删除的文件的名称 |
|
||||
|
||||
返回:any
|
||||
@@ -168,20 +198,25 @@ return obj.connect();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-delete.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
//删除Test.txt文件
|
||||
obj.delete("Test.txt");
|
||||
//验证文件是否被删除
|
||||
return obj.FileDate("Test.txt",0);
|
||||
//获取文件时间,若无该文件,返回0
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-delete.txt", false);
|
||||
echo obj.delete("tsl-ftp-delete.txt"), "\n";
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `disconnectNotifyPeer()`
|
||||
@@ -206,28 +241,36 @@ return obj.FileDate("Test.txt",0);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `file_name` | string | 字符串类型,指定要获得修改时间的文件的名称 |
|
||||
| `s_gmt` | boolean | 布尔类型,指定返回的时间是否为格林尼治时间标准时间 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ------- | -------------------------------------------------- |
|
||||
| `file_name` | string | 字符串类型,指定要获得修改时间的文件的名称 |
|
||||
| `s_gmt` | boolean | 布尔类型,指定返回的时间是否为格林尼治时间标准时间 |
|
||||
|
||||
返回:datetime
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-date.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
ret:= obj.FileDate("Test.txt",0);
|
||||
return DateTimeToStr(ret);
|
||||
//"2024-07-31 14:28:00"
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-date.txt", false);
|
||||
echo obj.fileDate("tsl-ftp-date.txt", false) > 0, "\n";
|
||||
obj.delete("tsl-ftp-date.txt");
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `get(source_file, dest, resume)`
|
||||
@@ -240,31 +283,45 @@ return DateTimeToStr(ret);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `source_file` | string | 执行FTP上要下载的源文件名称 |
|
||||
| `dest` | TSLObj | TStream类型,下载文件的目标流对象。参考 TFileStream对象 |
|
||||
| `resume` | boolean | 当设置为真实支持断点续传,否则重新下载文件 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------- | ------- | ------------------------------------------------------- |
|
||||
| `source_file` | string | 执行FTP上要下载的源文件名称 |
|
||||
| `dest` | TSLObj | TStream类型,下载文件的目标流对象。参考 TFileStream对象 |
|
||||
| `resume` | boolean | 当设置为真实支持断点续传,否则重新下载文件 |
|
||||
|
||||
返回:any
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
source_file := "/data/workspace/tmp/tsl-ftp-get-source.txt";
|
||||
dest_file := "/data/workspace/tmp/tsl-ftp-get-dest.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", source_file, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", source_file);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
obj.TryNATFastTrack := 1;
|
||||
//下载文件
|
||||
st := new TFileStream("","D:\\test\\1.txt",65535);
|
||||
obj.get("FtpTest.txt",st,0);
|
||||
//若下载成功,可在本机对应位置查看文件
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-get.txt", false);
|
||||
dest := new TMemoryStream();
|
||||
echo obj.get("tsl-ftp-get.txt", dest, false), "\n";
|
||||
dest.position := 0;
|
||||
dest.saveToFile("", dest_file);
|
||||
obj.delete("tsl-ftp-get.txt");
|
||||
obj.abort();
|
||||
echo fileExists("", dest_file), "\n";
|
||||
fileDelete("", source_file);
|
||||
fileDelete("", dest_file);
|
||||
// 输出:
|
||||
// 0
|
||||
// 1
|
||||
```
|
||||
|
||||
### `help(help_contents, command)`
|
||||
@@ -277,10 +334,10 @@ obj.get("FtpTest.txt",st,0);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `help_contents` | TStringList | 字符串类型,用于返回服务器的执行状态信息 |
|
||||
| `command` | string | 可选。字符串类型,用于请求具体的命令的帮助信息,如HELP SITE |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------------- | ----------- | ----------------------------------------------------------- |
|
||||
| `help_contents` | TStringList | 字符串类型,用于返回服务器的执行状态信息 |
|
||||
| `command` | string | 可选。字符串类型,用于请求具体的命令的帮助信息,如HELP SITE |
|
||||
|
||||
返回:any
|
||||
|
||||
@@ -300,40 +357,45 @@ obj.get("FtpTest.txt",st,0);
|
||||
|
||||
声明:function
|
||||
|
||||
列出从FTP服务器上下载文件
|
||||
列出 FTP 服务器当前目录中匹配 specifier 的文件或目录
|
||||
|
||||
<!-- tags: Object FTP 文件传输 列出 列表 文件 目录 路径 file 对象 实例 -->
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `dest` | TStringList | 字符串列表类型,当前目录的文件和目录列表 |
|
||||
| `specifier` | string | 字符串类型,当前目录下的目录名称或要列出的文件通配符(如’*.*’,’A.txt’等) |
|
||||
| `details` | boolean | 布尔类型,是否返回详细的列表信息,包括文件大小,修改日期和文件所有者权限,组等 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ----------- | -------------------------------------------------- |
|
||||
| `dest` | TStringList | 接收文件或目录列表的字符串列表 |
|
||||
| `specifier` | string | 当前目录下的目录名称、文件名或通配符,例如 `*.txt` |
|
||||
| `details` | boolean | 是否返回包含大小、修改时间和权限等信息的详细列表 |
|
||||
|
||||
返回:any
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-list.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
AFiles := new TStringList();
|
||||
//获取当前目录所有.txt文件信息
|
||||
obj.List(AFiles,'*.txt',true);
|
||||
return AFiles.GetText();
|
||||
//字符串:
|
||||
"-rw-r--r-- 1 1001 1001 17 Apr 09 16:07 test01.txt
|
||||
-rw-r--r-- 1 1001 1001 0 Sep 16 2023 test02.txt
|
||||
-rw-r--r-- 1 1001 1001 38 Jul 25 17:26 test03.txt"
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-list.txt", false);
|
||||
files := new TStringList();
|
||||
obj.list(files, "*.txt", true);
|
||||
echo files.count > 0, "\n";
|
||||
obj.delete("tsl-ftp-list.txt");
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:1
|
||||
```
|
||||
|
||||
### `login()`
|
||||
@@ -351,17 +413,19 @@ return AFiles.GetText();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
return obj.RetrieveCurrentDir();
|
||||
//获取当前所在目录,若登录成功,则返回"/"
|
||||
echo obj.login(), "\n";
|
||||
echo obj.retrieveCurrentDir, "\n";
|
||||
obj.abort();
|
||||
// 输出:
|
||||
// 0
|
||||
// /
|
||||
```
|
||||
|
||||
### `makeDir(dir_name)`
|
||||
@@ -374,8 +438,8 @@ return obj.RetrieveCurrentDir();
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------ | ---------------------------- |
|
||||
| `dir_name` | string | 字符串类型,要创建的目录名称 |
|
||||
|
||||
返回:any
|
||||
@@ -383,17 +447,18 @@ return obj.RetrieveCurrentDir();
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
obj.MakeDir("newDir");
|
||||
//若创建成功,可在服务器中查看或使用FAQ:List 查看
|
||||
obj.login();
|
||||
echo obj.makeDir("tsl-make-dir"), "\n";
|
||||
obj.removeDir("tsl-make-dir");
|
||||
obj.abort();
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `noop()`
|
||||
@@ -418,32 +483,36 @@ obj.MakeDir("newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `source` | TStream | 流对象类型,包含要上传的数据 |
|
||||
| `dest_file` | string | 字符串类型,远程服务器的目标文件名 |
|
||||
| `append` | boolean | 布尔类型,为真时,服务器将上传到数据从已存在的文件末尾写入 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ------- | ---------------------------------------------------------- |
|
||||
| `source` | TStream | 流对象类型,包含要上传的数据 |
|
||||
| `dest_file` | string | 字符串类型,远程服务器的目标文件名 |
|
||||
| `append` | boolean | 布尔类型,为真时,服务器将上传到数据从已存在的文件末尾写入 |
|
||||
|
||||
返回:any
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-put.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
//构造TStream对象
|
||||
filepath := "D:\\test\\Test.txt";
|
||||
st := new TMemoryStream();
|
||||
st.LoadFromFile("",filepath);
|
||||
obj.Put(st,"put.txt",false);
|
||||
//若上传成功,可在服务器中查看或使用FAQ:Get 下载后在本机查看
|
||||
obj.login();
|
||||
echo obj.put(source, "tsl-ftp-put.txt", false), "\n";
|
||||
obj.delete("tsl-ftp-put.txt");
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `quit()`
|
||||
@@ -468,8 +537,8 @@ obj.Put(st,"put.txt",false);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------ | --------------------------- |
|
||||
| `command` | string | 字符串类型,要执行的FTP命令 |
|
||||
|
||||
返回:integer
|
||||
@@ -484,8 +553,8 @@ obj.Put(st,"put.txt",false);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------- | ------- | ------------------ |
|
||||
| `delay` | integer | 整数类型,延后时间 |
|
||||
|
||||
返回:integer
|
||||
@@ -500,8 +569,8 @@ obj.Put(st,"put.txt",false);
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------ | --------------------------------------- |
|
||||
| `dir_name` | string | 字符串类型,FTP服务器上要移除的目录名称 |
|
||||
|
||||
返回:any
|
||||
@@ -509,17 +578,18 @@ obj.Put(st,"put.txt",false);
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
obj.Remove("testDir");
|
||||
//若删除成功,可在服务器中查看或使用FAQ:List 查看
|
||||
obj.login();
|
||||
obj.makeDir("tsl-remove-dir");
|
||||
echo obj.removeDir("tsl-remove-dir"), "\n";
|
||||
obj.abort();
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `rename(source_file, dest_file)`
|
||||
@@ -532,27 +602,36 @@ obj.Remove("testDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------- | ------ | -------------------- |
|
||||
| `source_file` | string | 字符串类型,源文件名 |
|
||||
| `dest_file` | string | 字符串类型,新文件名 |
|
||||
| `dest_file` | string | 字符串类型,新文件名 |
|
||||
|
||||
返回:any
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-rename.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
obj.rename("testDir","newDir");
|
||||
//若重命名成功,可在服务器中查看或使用FAQ:List 查看
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-old.txt", false);
|
||||
echo obj.rename("tsl-ftp-old.txt", "tsl-ftp-new.txt"), "\n";
|
||||
obj.delete("tsl-ftp-new.txt");
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:0
|
||||
```
|
||||
|
||||
### `resumeSupported()`
|
||||
@@ -577,10 +656,10 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `cmd` | string | 字符串类型,受到Options影响的命令 |
|
||||
| `options` | string | 字符串类型,应用于FTP 会话的选项 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------ | --------------------------------- |
|
||||
| `cmd` | string | 字符串类型,受到Options影响的命令 |
|
||||
| `options` | string | 字符串类型,应用于FTP 会话的选项 |
|
||||
|
||||
返回:any
|
||||
|
||||
@@ -594,8 +673,8 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------ | ------------------------------- |
|
||||
| `lang_tag` | string | 字符串类型,FTP客户端的语言标记 |
|
||||
|
||||
返回:any
|
||||
@@ -610,10 +689,10 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `file_name` | string | 字符串类型,服务器上更新的文件名 |
|
||||
| `local_time` | datetime | 时间类型,指定文件修改的时间值 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------ | -------- | -------------------------------- |
|
||||
| `file_name` | string | 字符串类型,服务器上更新的文件名 |
|
||||
| `local_time` | datetime | 时间类型,指定文件修改的时间值 |
|
||||
|
||||
返回:any
|
||||
|
||||
@@ -627,10 +706,10 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `file_name` | string | 字符串类型,服务器上更新的文件名 |
|
||||
| `gmt_time` | datetime | 时间类型,指定文件修改的时间值 |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | -------- | -------------------------------- |
|
||||
| `file_name` | string | 字符串类型,服务器上更新的文件名 |
|
||||
| `gmt_time` | datetime | 时间类型,指定文件修改的时间值 |
|
||||
|
||||
返回:any
|
||||
|
||||
@@ -644,8 +723,8 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `command` | string | 字符串类型,FTP服务器端命令名称。常常用来发发送没有包含在FTP协议中的服务器端命令。可以用HELP SITE命令查找指定FTP服务器的命令和语法信息 |
|
||||
|
||||
返回:any
|
||||
@@ -660,26 +739,35 @@ obj.rename("testDir","newDir");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `file_name` | any | file_name |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ---- | --------- |
|
||||
| `file_name` | any | file_name |
|
||||
|
||||
返回:int64
|
||||
|
||||
#### 示例
|
||||
|
||||
```tsl
|
||||
obj := CreateObject("FTP");
|
||||
obj.host := "ftp.tinysoft.com.cn";
|
||||
obj.port := 20;
|
||||
obj.username := username;
|
||||
obj.password := password;
|
||||
//连接FTP服务器
|
||||
filename := "/data/workspace/tmp/tsl-ftp-size.txt";
|
||||
pos := 0;
|
||||
writeFile(rwRaw(), "", filename, pos, 5, "hello");
|
||||
source := new TMemoryStream();
|
||||
source.loadFromFile("", filename);
|
||||
source.position := 0;
|
||||
obj := new FTP();
|
||||
obj.host := "127.0.0.1";
|
||||
obj.port := 42121;
|
||||
obj.username := "tsl_user";
|
||||
obj.password := "tsl_pass";
|
||||
obj.passive := true;
|
||||
obj.connect();
|
||||
//登录
|
||||
obj.Login();
|
||||
return obj.Size("test.txt");
|
||||
//整数,18
|
||||
obj.login();
|
||||
obj.put(source, "tsl-ftp-size.txt", false);
|
||||
echo obj.size("tsl-ftp-size.txt"), "\n";
|
||||
obj.delete("tsl-ftp-size.txt");
|
||||
obj.abort();
|
||||
fileDelete("", filename);
|
||||
// 输出:5
|
||||
```
|
||||
|
||||
### `status(status_list)`
|
||||
@@ -692,8 +780,8 @@ return obj.Size("test.txt");
|
||||
|
||||
可见性:public
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------- | ----------- | ------------------------------------------------ |
|
||||
| `status_list` | TStringList | 字符串列表类型,服务器响应的连接、传输参数等状态 |
|
||||
|
||||
返回:any
|
||||
|
||||
Reference in New Issue
Block a user