Foxtable(狐表)用户栏目专家坐堂 → [求助]如何返回本地目录的文件数


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

主题:[求助]如何返回本地目录的文件数

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[求助]如何返回本地目录的文件数  发帖心情 Post By:2020/10/12 14:38:00 [只看该作者]

表事件  BeforeDeleteFile
      Dim fls1 As List(of String)
        fls1 = FileSys.GetFiles(ProjectPath & "RemoteFiles" & _ftp.RootDir.Replace("/","\") & "\" & e.DataRow("合同类型") & "\" & e.DataRow("合同编号")) '返回本地目录下的文件数
        If fls1.Count = 0 Then
            FileSys.DeleteDirectory(ProjectPath & "RemoteFiles" & _ftp.RootDir.Replace("/","\") & "\" & e.DataRow("合同类型") & "\" & e.DataRow("合同编号"),2,2)  '删除本机的目录
        End If
以上代码是错误的,其实我是参照以下代码写的:
        Dim fls As List(of String)
        fls = _ftp.GetFileList(_ftp.RootDir.Replace("/","\") & "\" & e.DataRow("合同类型") & "\" & e.DataRow("合同编号")) '返回此FTP目录下的文件数
        If fls.Count = 0 Then
            _ftp.DeleteDir(_ftp.RootDir.Replace("/","\") & "\" & e.DataRow("合同类型") & "\" & e.DataRow("合同编号"),True)  '直接删除此目录及下面的所有文件
        End If
查了帮助文件,找到了FileSys.GetFiles这个代码,像参照着_ftp.GetFileList来写,但不行,请老师看下

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


加好友 发短信
等级:超级版主 帖子:106603 积分:542186 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/12 14:45:00 [只看该作者]

不能在这个事件处理,因为这时候文件还没有删除,当前目录肯定是无法删除的。只能放到按钮里处理,或者到datacolchanged事件处理

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2020/10/12 14:49:00 [只看该作者]

是这个道理,是不能放在这里写代码,但现在的问题是这个代码写好后我都无法点确定,是代码写法上有问题,不知错在哪里
fls1 = FileSys.GetFiles(ProjectPath & "RemoteFiles" & _ftp.RootDir.Replace("/","\") & "\" & e.DataRow("合同类型") & "\" & e.DataRow("合同编号")) '返回本地目录下的文件数
这条代码报错

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


加好友 发短信
等级:超级版主 帖子:106603 积分:542186 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/12 15:10:00 [只看该作者]

报什么错?

 回到顶部