Foxtable(狐表)用户栏目专家坐堂 → [求助]FTP中删除文件的求助


  共有2314人关注过本帖平板打印复制链接

主题:[求助]FTP中删除文件的求助

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[求助]FTP中删除文件的求助  发帖心情 Post By:2020/4/6 19:32:00 [只看该作者]

老师,现在有二个问题,请帮忙解答下,谢谢!
一、当按DEL键删除“附件”单元格中内容后,如何把上传文件时建立的公司名目录一起删除
二、附件列是个图片扩展型,当上传文件后可以点 右边的 “...” 打开图片管理器,在这其中删除某一个文件时,如何在服务器上同步删除,又当把所有文件都删除时,如何把创建的公司名目录也删除
目前代码如下:
表中Click事件:
If e.Col.Name = "附件" Then
    Dim dlg As New openFileDialog '定义一个新的SaveFileDialog
    dlg.Filter= "图形文件|*.bmp;*.jpg;*.gif;*.png" '设置筛选器
    dlg.MultiSelect = True
    If dlg.showDialog = DialogResult.Ok Then '如果用户单击了确定按钮
        Dim ftp1 As new  ftpclient
        ftp1.host=""
        ftp1.port = ""
        ftp1.Account = ""
        ftp1.password = ""
        Dim r As Row = Tables("上下游公司名录").Current
        Dim ls = r.DataRow.Lines("附件")
        For Each f As String In dlg.FileNames
            Dim file = "/上下游公司名录附件/" & r("公司") & "/" & filesys.GetName(f)
            If ftp1.DirExists("/上下游公司名录附件/" & r("公司")) = False Then
                ftp1.MakeDir("/上下游公司名录附件/" & r("公司"))
            End If
            Dim Result As DialogResult
            If ftp1.FileExists(file) Then
                Result = MessageBox.Show("文件已经存在,是否覆盖?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
            End If
            If result = Nothing OrElse result = DialogResult.Yes Then
                If  ftp1.Upload(f,file,True) = True Then
                    If ls.contains(file) = False Then
                        ls.add(file)
                    End If
                Else
                    MessageBox.Show( f & "上传失败" ,"提示" ,MessageBoxButtons.OK,MessageBoxIcon.Question)
                End If
            End If
        Next
        r.DataRow.lines("附件") = ls
        ftp1.Close
    End If
End If

DataColChanging事件
If e.DataCol.Name = "附件" Then
    If e.NewValue = Nothing Then
        Dim dr As DataRow = e.DataRow
        Dim ls As List(of String) = dr.lines("附件")
        Dim ftp1 As new  ftpclient
        ftp1.host=""
        ftp1.port = ""
        ftp1.Account = ""
        ftp1.password = ""
        For Each s As String In ls
            ftp1.DeleteFile(s)
        Next
        ftp1.close
    End If
End If

 回到顶部