Foxtable(狐表)用户栏目专家坐堂 → ftp问题,请教


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

主题:ftp问题,请教

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


加好友 发短信
等级:童狐 帖子:217 积分:1646 威望:0 精华:0 注册:2018/1/21 10:25:00
ftp问题,请教  发帖心情 Post By:2019/7/29 3:28:00 [只看该作者]

表中单元格为多文件型,采用远程文件管理器管理,文件管理器隐藏所有命令标签。请问:
如何用代码一次性删除该单元格中的所有文件,并同步删除ftp目录中的相应文件呢?


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


加好友 发短信
等级:童狐 帖子:217 积分:1646 威望:0 精华:0 注册:2018/1/21 10:25:00
  发帖心情 Post By:2019/7/29 3:48:00 [只看该作者]

为了获取单元格中的所有文件名,看我绕了多大的圈子啊……惭愧!
Dim ftp1 As New FtpClient
ftp1.Host="47.91.11.151"
ftp1.Account = "ftpuser"
ftp1.Password = "ftp@163"
ftp1.RootDir = _xmml & "/附件区"
Dim fm As WinForm.FileManager = e.Form.Controls("FileManager2")
fm.FTPclient = ftp1

Dim r As Row = Tables("文档表").Current
Dim s As String = r("附件")
s = s.Replace(chr(13),"*")
s = s.Replace(chr(10),"")
Dim val() As String = s.Split("*")
Dim vs As new List(of String)
vs.AddRange(val)
For Each v As String In vs
    Dim fl As String = FileSys.GetName(v)
    '    output.show(fl)
    Dim file As String = _xmml & "\附件区\" & fl
    If ftp1.FileExists(file) Then '如果存在则删除
        If ftp1.DeleteFile(file) = True Then '这里要带路径的
            Messagebox.show("ftp文档" & fl & "删除成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            fm.DeleteFile(fl) '这里是不带路径的
        Else
            Messagebox.show("ftp文档" & fl & "删除失败,请管理员手动删除!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        End If
    Else
        messagebox.Show("ftp文档" & fl & "不存在!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
Next
[此贴子已经被作者于2019/7/29 4:17:50编辑过]

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


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

Dim r As Row = Tables("文档表").Current
If r IsNot Nothing Then
    Dim ftp1 As New FtpClient
    ftp1.Host="47.91.11.151"
    ftp1.Account = "ftpuser"
    ftp1.Password = "ftp@163"
    
    For Each fl As String In r.DataRow.Lines("附件")
        Dim file As String = _xmml & "\附件区\" & fl
        If ftp1.FileExists(file) Then '如果存在则删除
            If ftp1.DeleteFile(file) = True Then '这里要带路径的
                Messagebox.show("ftp文档" & fl & "删除成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            Else
                Messagebox.show("ftp文档" & fl & "删除失败,请管理员手动删除!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            End If
        Else
            messagebox.Show("ftp文档" & fl & "不存在!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        End If
    Next
    r.Delete
End If

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


加好友 发短信
等级:童狐 帖子:217 积分:1646 威望:0 精华:0 注册:2018/1/21 10:25:00
  发帖心情 Post By:2019/7/29 14:36:00 [只看该作者]

哦哦,感谢蓝版!

 回到顶部