以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- FTP动态路径 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=98171) |
-- 作者:zoyong -- 发布时间:2017/3/25 11:49: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.18" ftp.Port = 21 ftp.Account = "cgjftp" ftp.Password = "Xj671766" ftp.ChangeDir("\\工程管理") \'进入UpLoadFile Dim fp As String = "\\工程管理" Dim ftpName As String = fp & "\\" & Format(Date.Now, "yyyyMMddHHmmss") & user.Name & hz If ftp.Upload(dlg.FileName,ftpname) = True Then Dim sz As Date = ftp.GetFileTime(ftpName) ftp.Rename(ftpName, fp & "\\" & Format(sz, "yyyyMMddHHmmss") & user.Name & hz) Messagebox.show("上传完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Else Messagebox.show("上传失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) End If End If 路径格式: 根目录 /年份目录 /项目名称 /工程管理/2014/项目名称 /工程管理/2015/项目名称 /工程管理/2016/项目名称 /工程管理/2017/项目名称 动态获取年份和项目名称 [此贴子已经被作者于2017/3/25 13:27:48编辑过]
|
-- 作者:有点蓝 -- 发布时间:2017/3/25 12:10:00 -- 你要先创建指定年份和项目名称的目录,然后才能使用这个目录 项目名称从哪里来?
|
-- 作者:zoyong -- 发布时间:2017/3/25 12:31:00 -- 项目资料里面有年份和项目名称 |
-- 作者:有点蓝 -- 发布时间:2017/3/25 14:11:00 -- 创建目录:http://www.foxtable.com/webhelp/scr/1410.htm 合成字符串类似 Dim ftpName As String = fp & "\\" & Tables("项目资料表").Current("年份") & "\\" & Tables("项目资料表").Current("项目名称") & user.Name & hz
|
-- 作者:zoyong -- 发布时间:2017/3/25 15:01:00 -- ![]() 有点蓝老师 上传 错误
|
-- 作者:有点蓝 -- 发布时间:2017/3/25 15:33:00 -- 服务器有没有创建了指定的目录? msgbox(ftpName ),自己弹出来看看路径对不对
|
-- 作者:zoyong -- 发布时间:2017/3/25 16:09:00 -- 路径没问题 FTP中有指定的文件名 /工程管理/2016/***项目名称 ftp.ChangeDir("\\工程管理") \'进入UpLoadFile Dim fp As String = "\\工程管理" Dim ftpName As String = fp & "\\" & Format(Date.Now, "yyyyMMddHHmmss") & user.Name & hz If ftp.Upload(dlg.FileName,ftpname) = True Then Dim sz As Date = ftp.GetFileTime(ftpName) ftp.Rename(ftpName, fp & "\\" & Format(sz, "yyyyMMddHHmmss") & user.Name & hz) 这个代码还有问题 换成这个代码就可以,但是文件存在根目录下面 ftp.ChangeDir("\\工程管理") \'进入UpLoadFile Dim fp As String = "\\工程管理" Dim ftpName As String = fp & "\\" & Format(Date.Now, "yyyyMMddHHmmss") & user.Name & hz If ftp.Upload(dlg.FileName,ftpname) = True Then Dim sz As Date = ftp.GetFileTime(ftpName) ftp.Rename(ftpName, fp & "\\" & Format(sz, "yyyyMMddHHmmss") & user.Name & hz) |
-- 作者:有点蓝 -- 发布时间:2017/3/25 16:11:00 -- 参考4楼的方式合成路径, msgbox(ftpName )自己弹出看看
|
-- 作者:zoyong -- 发布时间:2017/3/25 16:18:00 -- 蓝老师 是年份取值问题 只要年 不要月 取值2016 [此贴子已经被作者于2017/3/25 16:19:31编辑过]
|
-- 作者:有点蓝 -- 发布时间:2017/3/25 16:40:00 -- http://www.foxtable.com/webhelp/scr/0362.htm |