Foxtable(狐表)用户栏目专家坐堂 → [求助]关于文件复制的一个问题


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

主题:[求助]关于文件复制的一个问题

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


加好友 发短信
等级:童狐 帖子:207 积分:2205 威望:0 精华:0 注册:2012/10/6 17:19:00
[求助]关于文件复制的一个问题  发帖心情 Post By:2013/11/17 20:52:00 [只看该作者]

今天,客户提出了一个关于数据与图形文件上传的任务,简单一点说,就是要解决如下问题
    已知 :1. 有表A:字段a1、字段a2,字段a1与字段a2都是字符型数据,但字段a2里面的数据是一个图形文件的路径(这些图形文件放在文件夹1里面);

          2. 有文件夹1,里面是一些图形文件;

          3. 有表B:字段b1,字段b2,字段b1与字段b2都是字符型数据;

          4. 有文件夹2

要求:设计一个“更新”按钮,点击该按钮:

       当表A里面的记录有增加时,表B里面的记录也自动增加,同时,将文件夹1里面新增的图片复制到文件夹2里面。其中,a2的值等于a1b2的值是文件          夹2里面新增图片文件的路径。 



求狐爸指导!


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


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

 这个简单吧?编写表A的datarowadded事件,参考 http://www.foxtable.com/help/topics/2490.htm

 至于拷贝文件,如果是ftp上的,就用ftp的拷贝文件方式(好像狐表暂没有提供);如果是本地的拷贝,直接写路径就行了 http://www.foxtable.com/help/topics/0342.htm

 

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


加好友 发短信
等级:狐精 帖子:3358 积分:24758 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2013/11/17 21:43:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

简单做了个例子  例子中是通过文件ID 来判断文件唯一性的 这个只是个参考 不是很科学 主要是给你展示几个命令的用法 找到文件 确定路径 复制文件 判断文件有效性 你可以根据实际情况来修改代码

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


加好友 发短信
等级:童狐 帖子:207 积分:2205 威望:0 精华:0 注册:2012/10/6 17:19:00
  发帖心情 Post By:2013/11/17 21:44:00 [只看该作者]

是一个好方法,但客户要求文件拷贝到局域网的另外一台机器上,不知 CopyFile函数能否实现?帮助文档里有个“局域网中的文件管理”,但好像不适合我这边的情况

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


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

 局域网是可以的,但是文件夹要共享出来。路径这样写 \\ip\共享文件夹

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


加好友 发短信
等级:童狐 帖子:207 积分:2205 威望:0 精华:0 注册:2012/10/6 17:19:00
  发帖心情 Post By:2013/11/17 21:57:00 [只看该作者]

哦,非常感谢“有点甜”和“rjh4078”,我好像懂了一点了!

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


加好友 发短信
等级:狐精 帖子:3358 积分:24758 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2013/11/18 11:50:00 [只看该作者]

局域网建议搭个server-U FTP服务器 管理起来比较方便 很多代码都是现成的

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


加好友 发短信
等级:小狐 帖子:339 积分:3364 威望:0 精华:0 注册:2011/3/22 22:52:00
  发帖心情 Post By:2020/12/21 15:44:00 [只看该作者]

感谢rjh4078 提供的案例和代码,省掉了我不少事。帮优化了一下代码,以便复制文件时逐条提示:

 

For Each r As Row In Tables("表A")
   
    If FileSys.FileExists(r("文件位置"))  Then
        Dim Multi As String = r("文件位置")
        Dim Values() As String
        Values = Multi.split("\")
        Dim Index=Values.Length - 1
       
       
        Dim dr As DataRow=DataTables("表B").find("id='" & r("id") &  "'")
        If dr Is Nothing Then
            Dim rr As Row = Tables("表B").addnew
            rr("id")= r("id")
            FileSys.CopyFile(multi, ProjectPath & "W2\" & Values(Index),True)
            rr("文件位置")=ProjectPath & "W2\" & Values(Index)
        End If
    Else
       
        '        MessageBox.SHOW("没有",r("文件位置"),"文件" )
        MessageBox.Show("你选择的文件:" & r("文件位置") & "不存在或为空","提示")
    End If
Next

DataTables.save


 回到顶部