在线求助:多文件上传后改名问题!

523shan 2004-12-24 03:09:09
下面是孟老大的多文件上传程序,我想改成上传后自动改名,在代码
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName)
前面加了
Dim FileName111 As String = Path.GetFileName(fileName)
fileName = Now()
fileName = Replace(fileName, "-", "")
fileName = Replace(fileName, ":", "")
fileName = Replace(fileName, " ", "")
fileName = fileName
fileName = fileName & Strx & Right(Path.GetFileName(FileName111), Len(Path.GetFileName(FileName111)) - (InStr(Path.GetFileName(FileName111), ".")) + 1)

现在是按时间改名了,可是上传多个文件后,前面的文件就被后面的文件覆盖了,求各位大侠帮忙解决这个问题!谢谢!(问题解决立即送分,在线等)

孟老大多文件上传代码:
Private Function SaveImages() As System.Boolean
'遍历File表单元素
Dim files As System.Web.HttpFileCollection = System.Web.HttpContext.Current.Request.Files

'状态信息
Dim strMsg As New System.Text.StringBuilder("上传的文件分别是:<hr color=red>")
Dim iFile As System.Int32
Try
For iFile = 0 To files.Count - 1
'检查文件扩展名字
Dim postedFile As System.Web.HttpPostedFile = files(iFile)
Dim fileName, fileExtension As System.String
fileName = System.IO.Path.GetFileName(postedFile.FileName)
If Not (fileName = String.Empty) Then
fileExtension = System.IO.Path.GetExtension(fileName)
strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br/>")
strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br/>")
strMsg.Append("上传文件的文件名:" + fileName + "<br/>")
strMsg.Append("上传文件的扩展名:" + fileExtension + "<br/><hr>")
'可根据扩展名字的不同保存到不同的文件夹
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName)
End If
Next
strStatus.Text = strMsg.ToString()
Return True
Catch Ex As System.Exception
strStatus.Text = Ex.Message
Return False
End Try
End Function


...全文
151 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
523shan 2004-12-24
  • 打赏
  • 举报
回复
高手们过来看看啊
嫌分少我再加咯,还有20分
523shan 2004-12-24
  • 打赏
  • 举报
回复
上面代码写错了,应该是
Dim FileName111 As String = Path.GetFileName(fileName)
fileName = Now()
fileName = Replace(fileName, "-", "")
fileName = Replace(fileName, ":", "")
fileName = Replace(fileName, " ", "")
fileName = fileName & Right(Path.GetFileName(FileName111), Len(Path.GetFileName(FileName111)) - (InStr(Path.GetFileName(FileName111), ".")) + 1)

523shan 2004-12-24
  • 打赏
  • 举报
回复
Dim FileName111 As String = Path.GetFileName(fileName)
fileName = Now()
fileName = Replace(fileName, "-", "")
fileName = Replace(fileName, ":", "")
fileName = Replace(fileName, " ", "")
fileName = fileName
fileName = fileName & Strx & Right(Path.GetFileName(FileName111), Len(Path.GetFileName(FileName111)) - (InStr(Path.GetFileName(FileName111), ".")) + 1)

我加上上面的代码后文件名按时间改了,但问题是我同时上传多个文件时后面上传的就会覆盖前面上传的文件
simon8181 2004-12-24
  • 打赏
  • 举报
回复
postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName)

改fileName,按照你想要的名字
木古古18 2004-12-24
  • 打赏
  • 举报
回复
其实你只要知道上传后文件保存的路径
然后用MOVE这个方法就可以重新命名了
木古古18 2004-12-24
  • 打赏
  • 举报
回复
思路
首先上传文件
然后找到文件的位置,
最后File.Move()这个是C#的
这个就可以改名字

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧