以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  老师,ftp多文件用代码怎么下载呢  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=154067)

--  作者:cd_tdh
--  发布时间:2020/9/2 17:28:00
--  老师,ftp多文件用代码怎么下载呢


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

Dim r As Row = Tables("采购合同管理").Current
Dim dlg As New SaveFileDialog
Dim ftp1 As new  ftpclient
ftp1.host="120.***.0"
ftp1.Account =  "ft1"
ftp1.password =  "19*******9"
If ftp1.Download(r("采购合同扫描件"),dlg.FileName,True) = True Then
    Messagebox.show("下载完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    Messagebox.show("下载失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

 


 

[此贴子已经被作者于2020/9/2 17:28:36编辑过]

--  作者:有点蓝
--  发布时间:2020/9/2 17:34:00
--  
参考:http://www.foxtable.com/webhelp/topics/2717.htm
--  作者:cd_tdh
--  发布时间:2020/9/3 9:11:00
--  

老师,集合位置不知道怎么写

Dim ftp As  New  FtpClient
ftp.Host="120*****.0"
ftp.Account =  "ft****1"
ftp.Password =  "1********9"
Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
Dim dr As DataRow = Tables("采购合同管理").Current.DataRow
Dim lst As List(of String) =  dr.Lines("采购合同扫描件")  \'获取文件集合
\'msgbox(lst.Count) \'文件数量
For Each fl As  String In  FileSys.GetFiles(lst)
    If ftp.Download(fl,dlg.FileName,True) = True   Then
        messagebox.Show("下载完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Else
        messagebox.Show("下载失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
Next


--  作者:有点蓝
--  发布时间:2020/9/3 9:30:00
--  
For Each fl As  String In lst
\'msgbox(fl)

--  作者:cd_tdh
--  发布时间:2020/9/3 9:42:00
--  
msgbox(fl)弹出来是文件的数量,然后报错


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


--  作者:有点蓝
--  发布时间:2020/9/3 10:08:00
--  
msgbox(fl)绝对不可能是数量
--  作者:cd_tdh
--  发布时间:2020/9/3 10:28:00
--  

开始测试把附件列内容改到了,这样下载下来只有一个文件,这个文件名怎么处理呢?

Dim ftp As  New  FtpClient
ftp.Host="120********0"
ftp.Account =  "ft*****1"
ftp.Password =  "1*******9"
Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "图形文件|*.bmp;*.jpg;*.gif;*jpeg" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok  Then  \'如果用户单击了确定按钮
    Dim dr As DataRow = Tables("采购合同管理").Current.DataRow
    Dim lst As List(of String) =  dr.Lines("采购合同扫描件")  \'获取文件集合
    For Each fl As  String In lst
        If ftp.Download(fl,dlg.FileName,True) = True   Then
            messagebox.Show("下载完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        Else
            messagebox.Show("下载失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        End If
    Next
End If

[此贴子已经被作者于2020/9/3 10:43:26编辑过]

--  作者:有点蓝
--  发布时间:2020/9/3 10:46:00
--  
保存的都是同一个名称:If ftp.Download(fl,dlg.FileName,True) = True

改为使用FolderBrowserDialog

--  作者:cd_tdh
--  发布时间:2020/9/3 10:55:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200903105425.png
图片点击可在新窗口打开查看
全部都是下载到这样就停止了
[此贴子已经被作者于2020/9/3 10:57:12编辑过]

--  作者:有点蓝
--  发布时间:2020/9/3 10:58:00
--  
麻烦先花点时间看懂帮助

SelectedPath 

用户选定的目录。

dlg.SelectedPath是一个目录,不包含文件名