Foxtable(狐表)用户栏目专家坐堂 → [求助]判断文件,又没报错,但怎么没结果?求大师指点


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

主题:[求助]判断文件,又没报错,但怎么没结果?求大师指点

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


加好友 发短信
等级:一尾狐 帖子:498 积分:4611 威望:0 精华:0 注册:2013/4/25 8:02:00
[求助]判断文件,又没报错,但怎么没结果?求大师指点  发帖心情 Post By:2015/3/26 14:54:00 [只看该作者]

For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If
Next

大师们:
上面的代码运行后,又没报错,但又没结果?


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150326144736.jpg
图片点击可在新窗口打开查看


   If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then这句代码的文件夹难道不是判断安装目录下的毕业生电子照下存不存在照片吗?


        r("是否有照片") = "提交照片"      这句垪赋值有问题?

求大师指点!

QQ78511721


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


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

 你弹出一下看看是什么值

 

msgbox(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片"))


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


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

试试这样写

 

Dim path As String = DataTables("毕业生临时表").DataCols("照片").DefaultFolder
If path = "" Then
    path = ProjectPath & "Attachments"
End If
For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(path & "/毕业生电子照/" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If
Next


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


加好友 发短信
等级:一尾狐 帖子:498 积分:4611 威望:0 精华:0 注册:2013/4/25 8:02:00
  发帖心情 Post By:2015/3/26 15:01:00 [只看该作者]

For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then
        msgbox(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片"))
        
        r("是否有照片") = "提交照片"
    End If
Next

这样执行,什么值都没有?

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


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

 呃,看2楼,看3楼

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


加好友 发短信
等级:一尾狐 帖子:498 积分:4611 威望:0 精华:0 注册:2013/4/25 8:02:00
  发帖心情 Post By:2015/3/26 15:04:00 [只看该作者]

DefaultFolder & "\毕业生电子照" & r("照片")

这个是指向哪个地方?是不是下面这个地方还是他的IMAGES下?


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150326150256.jpg
图片点击可在新窗口打开查看

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


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

 能不能看2楼和3楼?

 

 不然你就试试

 

For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(ProjectPath & "毕业生电子照/" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If
Next


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


加好友 发短信
等级:管理员 帖子:47497 积分:251397 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/3/26 15:19:00 [只看该作者]

For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder &  “\" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If
Next
 
文件是包括子路径的,所以直接和DefaultFolder 合并就行,你临时将照片列改为文件列,看看其中的内容,就知道了。
[此贴子已经被作者于2015/3/26 15:21:17编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251397 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/3/26 15:25:00 [只看该作者]

以下是引用zgjmost在2015/3/26 15:01:00的发言:
For Each R As Row In Tables("毕业生临时表").Rows
    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then
        msgbox(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片"))
        
        r("是否有照片") = "提交照片"
    End If
Next

这样执行,什么值都没有?

 

 

显然,做这种调试的时候,你应该:

 

For Each R As Row In Tables("毕业生临时表").Rows
    msgbox(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片"))
    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If
Next
 
你放在判断之后,如果路径错了,文件不存在,条件不成立,还显示什么呢,肯定放在在判断之前显示合成的路径和文件名。

 回到顶部
帅哥哟,离线,有人找我吗?
菲舍尔
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:507 积分:3531 威望:0 精华:3 注册:2012/11/13 15:49:00
  发帖心情 Post By:2015/3/26 15:28:00 [只看该作者]

很明显的错误嘛


    If FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) = True Then
        r("是否有照片") = "提交照片"
    End If

按照楼上的信息:
FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照" & r("照片")) 合成的文件名肯定不存在

正确的应该是:
FileSys.FileExists(DataTables("毕业生临时表").DataCols("照片").DefaultFolder & "\毕业生电子照\” & r("照片")) 才对


 回到顶部
总数 14 1 2 下一页