以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]没上传成功 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=65215) |
-- 作者:liujywwy -- 发布时间:2015/3/11 16:01:00 -- [求助]没上传成功 上传按钮代码如下。觉的红色代码有问题,ml的值应该不是最后创建文件夹的目录。这个怎么改? Dim dlg As new OpenFileDialog If dlg.ShowDialog = DialogResult.OK Then Dim xg As Integer = dlg.FileName.LastIndexOf("\\") Dim fname As String = dlg.FileName.SubString(xg + 1) \'获取所选文件名称 Dim ftp As new FTPClient ftp.Host = "192.168.1.35" ftp.Account = "tester" ftp.Password = "tester" Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")" Dim ml As String = lj & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss") msgbox(ml) Dim sts As List(of String) = ftp.GetFileList(ml) \'获取当前目录的文件列表 If sts.Count > 0 Then For Each st As String In sts If st = fname Then MessageBox.Show("服务器上存在同名文件!","请注意") Return End If Next e.Form.text = "所选文件上传中...." If ftp.Upload(dlg.FileName,ml & "\\" & fname) = True Then \'若成功上传 Functions.Execute("刷新ListView") e.Form.text = "版本目录文件list" MessageBox.Show("恭喜你上传成功!","BDSMS提示您") Else MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你") e.Form.text = "版本目录文件list" End If End If End If |
-- 作者:有点甜 -- 发布时间:2015/3/11 16:04:00 -- 看不懂你什么意思,你ml的路径是根据时间在变的啊,每一次都不同啊,你必须加入对应的文件夹,才能把文件上传进去那个路径啊 |
-- 作者:liujywwy -- 发布时间:2015/3/11 16:18:00 -- ml就是随时间变化的文件夹。我现在就是不知道如何把之前afterload创建的文件夹名取出来。在这个文件夹下上传文件。
|
-- 作者:有点甜 -- 发布时间:2015/3/11 16:22:00 -- 用变量存储
Vars("最后一个文件夹") = "d:\\test" |
-- 作者:liujywwy -- 发布时间:2015/3/11 16:51:00 -- Vars("最后一个文件夹") = "d:\\test" 这个是指定了文件夹,并没有动态获取最后一个文件夹吧。 afterload创建文件夹的代码如下:先创建lj,然后是ml。现在就是想知道如何把最后创建的ml作为上传的文件夹。 ftp.ChangeDir("/待用户现场确认版本_产线禁止使用/2015") \'进入到待用户现场确认版本_产线禁止使用\\2015目录 Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")" If ftp.DirExists(lj) = False Then \'不存在临时版本编号目录时先创建临时版本编号目录 ftp.MakeDir(lj) End If Dim ml As String = lj & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss") If ftp.DirExists(ml) = False Then \'按照系统时间来创建时间目录 ftp.MakeDir(ml) End If |
-- 作者:有点甜 -- 发布时间:2015/3/11 16:53:00 -- 呃,能不能变通下???
Vars("最后一个文件夹") = ml |
-- 作者:liujywwy -- 发布时间:2015/3/12 10:46:00 -- 还是没有成功上传,好像代码没执行。 afterload代码: ftp.ChangeDir("/待用户现场确认版本_产线禁止使用/2015") \'进入到待用户现场确认版本_产线禁止使用\\2015目录 Dim lj As String = "/待用户现场确认版本_产线禁止使用/2015/" & Tables("临时版本跟踪表").current("临时版本编号") & "(" & Tables("临时版本跟踪表").current("客户") & "_" & Tables("临时版本跟踪表").current("博达机型") & ")" If ftp.DirExists(lj) = False Then \'不存在临时版本编号目录时先创建临时版本编号目录 ftp.MakeDir(lj) End If Dim ml As String = lj & "/" & Format(Date.now, "yyyy-MM-dd HH-mm-ss") If ftp.DirExists(ml) = False Then \'按照系统时间来创建时间目录 ftp.MakeDir(ml) End If vars("zhygwjj") = ml 上传代码: Dim sts As List(of String) = ftp.GetFileList(Vars("zhygwjj")) \'获取当前目录的文件列表 If sts.Count > 0 Then For Each st As String In sts If st = fname Then MessageBox.Show("服务器上存在同名文件!","请注意") Return End If Next e.Form.text = "所选文件上传中...." If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\\" & fname) = True Then \'若成功上传 Functions.Execute("刷新ListView") e.Form.text = "版本目录文件list" MessageBox.Show("恭喜你上传成功!","BDSMS提示您") Else MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你") e.Form.text = "版本目录文件list" End If End If |
-- 作者:有点甜 -- 发布时间:2015/3/12 10:49:00 -- 最基本的调试,是你加入msgbox,弹出对应的值,和看有没有执行对应的代码啊。 |
-- 作者:liujywwy -- 发布时间:2015/3/12 10:54:00 -- 没有执行 msgbox(Vars("zhygwjj"))返回的也是最后创建的文件夹。 但是之后的上传代码没有执行。 If sts.Count > 0 Then For Each st As String In sts If st = fname Then MessageBox.Show("服务器上存在同名文件!","请注意") Return End If Next e.Form.text = "所选文件上传中...." If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\\" & fname) = True Then \'若成功上传 Functions.Execute("刷新ListView") e.Form.text = "版本目录文件list" MessageBox.Show("恭喜你上传成功!","BDSMS提示您") Else MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你") e.Form.text = "版本目录文件list" End If End If |
-- 作者:有点甜 -- 发布时间:2015/3/12 10:57:00 -- 改成这样
For Each st As String In sts
If st = fname Then
MessageBox.Show("服务器上存在同名文件!","请注意")
Return
End If
Next
e.Form.text = "所选文件上传中...."
If ftp.Upload(dlg.FileName,Vars("zhygwjj") & "\\" & fname) = True Then \'若成功上传
Functions.Execute("刷新ListView")
e.Form.text = "版本目录文件list"
MessageBox.Show("恭喜你上传成功!","BDSMS提示您")
Else
MessageBox.Show("不好意思,所选文件上传失败!,请联系刘基永1034","BDSMS提醒你")
e.Form.text = "版本目录文件list"
End If
|