Foxtable(狐表)用户栏目专家坐堂 → 本地文件新建或修改后,如何自动上传到ftp指定目录下


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

主题:本地文件新建或修改后,如何自动上传到ftp指定目录下

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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
本地文件新建或修改后,如何自动上传到ftp指定目录下  发帖心情 Post By:2018/4/13 23:26:00 [只看该作者]

老师你好:
需求:1、本地文件新建或修改后,如何自动上传到ftp指定目录下,下面这段代码只对新建文件自动上传有效,但修改后的自动上传无效,如何调整下面代码??
2、这段代码最好写在哪里??谢谢!!

Dim ftp1 As New FtpClient

Dim ftls As List(Of String)

ftp1.Host="116.62."

ftp1.Account = "zkftp"

ftp1.Password = "zjzk123++"

ftls = ftp1.GetFileList("\JLZL2018\BB\"'FTP服务器指定目录下的全部文件名

For Each fl As String In FileSys.GetFiles("D:\AA\"'遍历本地指定目录下的全部文件名

   If ftp1.FileExists("\JLZL2018\BB\" & FileSys.GetName(fl)) = False Then   '判断FTP服务器指定目录下指定的文件是否存在,GetName:返回文件名称,不含路径

         ftp1.Upload("D:\AA\" & FileSys.GetName(fl),"\JLZL2018\BB\" & FileSys.GetName(fl))

    End If

Next

[此贴子已经被作者于2018/11/15 23:06:20编辑过]

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


加好友 发短信
等级:超级版主 帖子:107896 积分:548849 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/4/14 8:59:00 [只看该作者]

Dim ftp1 As New FtpClient

Dim ftls As List(Of String)

ftp1.Host="116.62.39.101"

ftp1.Account = "zkftp"

ftp1.Password = "zjzk123++"

ftls = ftp1.GetFileList("\JLZL2018\BB\")  'FTP服务器指定目录下的全部文件名

For Each fl As String In FileSys.GetFiles("D:\AA\")  '遍历本地指定目录下的全部文件名

  ftp1.Upload("D:\AA\" & FileSys.GetName(fl),"\JLZL2018\BB\" & FileSys.GetName(fl))

Next


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


加好友 发短信
等级:三尾狐 帖子:767 积分:6119 威望:0 精华:0 注册:2018/2/1 17:26:00
  发帖心情 Post By:2018/4/14 14:51:00 [只看该作者]

有点蓝老师:
2楼代码取消了:【If ftp1.FileExists("\JLZL2018\BB\" & FileSys.GetName(fl)) = False Then   '判断FTP服务器指定目录下指定的文件是否存在,GetName:返回文件名称,不含路径】
感觉到每执行一次代码,都要把整个文件夹的所有文件都上传一遍,这样是否太浪费资源了

有没有办法只对“新建或修改后”的文件进行上传??
谢谢!

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


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

Dim ftp1 As New FtpClient

Dim ftls As List(Of String)

ftp1.Host="116.62.39.101"

ftp1.Account = "zkftp"

ftp1.Password = "zjzk123++"

ftls = ftp1.GetFileList("\JLZL2018\BB\")  'FTP服务器指定目录下的全部文件名

For Each fl As String In FileSys.GetFiles("D:\AA\")  '遍历本地指定目录下的全部文件名

   If ftp1.FileExists("\JLZL2018\BB\" & FileSys.GetName(fl)) = False Then   '判断FTP服务器指定目录下指定的文件是否存在,GetName:返回文件名称,不含路径

         ftp1.Upload("D:\AA\" & FileSys.GetName(fl),"\JLZL2018\BB\" & FileSys.GetName(fl))

else

按下面方法比较本地文件和ftp文件的时间

    End If

Next


ftp文件日期

GetFileTime

返回ftp上指定文件最后一次修改的日期时间。

Dim ftp1 As New FtpClient
ftp1
.Host="196.128.143.28"
ftp1
.Account = "foxuser"
ftp1
.Password = "138238110"
Dim 
sz As Date
sz = ftp1.GetFileTime(
"\photo\jz.png")
Output.Show(
"修改时间:" & sz)G


本地文件日期:http://www.foxtable.com/webhelp/scr/2707.htm


 回到顶部