以文本方式查看主题

-  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=102453)

--  作者:zoyong
--  发布时间:2017/6/20 10:53:00
--  FTP动态目录无法建立
Dim Table As String =e.Form.TableName
Dim hangshu As Integer= Tables(Table).Rows.Count-1
If hangshu <0 Then
    Return
End If

Dim dlg As new  OpenFileDialog
If dlg.ShowDialog = DialogResult.OK Then
    Dim xg As Integer = dlg.FileName.LastIndexOf(".")
    Dim hz As String = dlg.FileName.SubString(xg)
    Dim ftp As new FTPClient
    ftp.Host="192.168.1.8"
    ftp.Port = 21
    ftp.Account = "cgftp"
    ftp.Password = "Xj671766"
    ftp.ChangeDir("\\工程管理")    \'设置根目录
    
    Dim fp As String = "\\工程管理"
    Dim ftpName As String = fp & "\\" & Tables("项目资料").Current("年份") & "\\" & Tables("项目资料").Current("档案编号") & hz      \'保存路径
    If ftp.Upload(dlg.FileName,ftpname) = True Then
        Dim sz As Date = ftp.GetFileTime(ftpName)
        ftp.Rename(ftpName, fp & "\\"  & Tables("项目资料").Current("年份") & "\\" & Tables("项目资料").Current("档案编号")  & "\\" &  Format(sz, "招标文件"  &  "-"   &   Tables("项目资料").Current("项目名称")  &  "yyyyMMddHHmmss") & _userName & hz )     ‘保存的文件名
        Messagebox.show("文件上传完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Else
        Messagebox.show("上传失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
End If


上面代码,FTP路径:/工程管理/2017/P17008/           其中     2017为“年份”   ,  P17008为“档案编号”  。

问题:FTP上有对应的档案编号”目录,则文件能上传到指定的以档案编号”为名的目录下面
         FTP上没有对应的档案编号”目录,则上传到根目录了,求解!!!       上面的保存路径代码有问题

--  作者:有点色
--  发布时间:2017/6/20 11:09:00
--  

 你要动态创建目录才行的。


Dim path1 As String = fp & "\\" & Tables("项目资料").Current("年份")
Dim path2 As String = path1 & "\\" & Tables("项目资料").Current("档案编号")
If ftp.DirExists(path1) = False Then
    ftp.MakeDir(path1)
End If
If ftp.DirExists(path2) = False Then
    ftp.MakeDir(path2)
End If