Foxtable(狐表)用户栏目专家坐堂 → 关于FTP的Rename的问题


  共有3628人关注过本帖树形打印复制链接

主题:关于FTP的Rename的问题

帅哥哟,离线,有人找我吗?
ap9709130
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:11456 威望:0 精华:0 注册:2013/11/24 22:10:00
关于FTP的Rename的问题  发帖心情 Post By:2019/1/23 14:51:00 [只看该作者]

 老师

我今天用Rename命令来更改服务器上的文件名称,发现一个问题.如果要改的文件名称里有"-" 这个符号,就会修改失败.但的如果手动去改,就可以改成"-"这样的?

有没有办法可以用代码修改,然后也能带有"-"这种符号的?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/23 15:30:00 [只看该作者]

我测试没问题,如

 

Dim ftp As new FTPClient
ftp.Account = "test"
ftp.Password = "test"
ftp.Host = "127.0.0.1"
ftp.Rename("/abc.xls", "/ab-c.xls")
ftp.OpenManager


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:11456 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2019/1/23 15:39:00 [只看该作者]

我的代码如下:
Dim mc As String = "GRANHYDROGELO-NP"

Dim lj1 As String = "\备份\产品资料\芦芭油\"
Dim lj As String = "\备份\产品资料\" & mc & "\"
Dim ftp1 As New FtpClient
ftp1.host= Vars("ip")
ftp1.Account = "123"
ftp1.password = "234"
If ftp1.DirExists(lj1) Then
Output.show(0)
    If ftp1.Rename(lj1,lj) Then
     Output.show(1)
    Else
        Messagebox.show("修改系统目录失败,请联系管理员!")
    End If
Else
Output.show(3)
End If
如果我把"GRANHYDROGEL O-NP" 中的 "-" 去掉,代码可以通过.如果加上"-" 就会弹出对话框,修改目录失败.

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/23 18:13:00 [只看该作者]

我测试了一下,没问题,红色的文件夹,必须先存在,不然无法重命名。

 

Dim ftp As new FTPClient
ftp.Account = "test"
ftp.Password = "test"
ftp.Host = "127.0.0.1"
ftp.Rename("/ab-c.xls", "/GRANHYDROGELO-NP/123c.xls")
ftp.OpenManager


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1470 积分:11456 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2019/1/24 16:03:00 [只看该作者]

我是改文件目录名称 ,为什么我的代码就不行? 如果去掉“-” 就可以。太奇怪了。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/1/24 16:32:00 [只看该作者]

改文件目录名称的时候,路径不要加上文件名,

比如:ftp.Rename("/GRANHYDROGELONP", "/GRANHYDROGELO-NP")
而不是:ftp.Rename("/GRANHYDROGELONP/abc.xls", "/GRANHYDROGELO-NP/abc.xls")

另外如果有多级目录。要确保每一个上级目录在电脑上都是存在的

 回到顶部