关于多张图片一起上传时的重命名问题

blueicexx 2007-10-21 08:24:12
问题是这样子的,我写了个依据当前日期与时分秒再加四位随机数生成图片新名称,在上传单张图片是一切正常,但是上传二张或二张以上图片的时候就出现上传的图片命名相同而导致服务存储时后面上传的图片把前面的张图覆盖掉了...也就是服务器最终保存的图片只有一张,或者缺少...

重命名函数大如下:

public static string getdatetimename()
{
....
return '200710212022301001'; ''返回这种格式,最后四位是用随机数生成的,前面的按日期时分秒组成
}

但测试结果表明,最终二张图片是都上传成功了,只是在分别上传的时候这个命名函数生成的文件名称是一样的,也就是服务器存储的时候覆盖掉了前面的.

为什么会得到一样的名称呢?随机数也有可能产生同样的值吗?
...全文
527 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueicexx 2007-10-23
  • 打赏
  • 举报
回复
问题解决了,我在随机数后面加了个static int i = 1,每次执行上传的时候就增加1,达到9后又清零

用c#写上传文件的代码比较简单,只是要判断一些格式,大小类的,再有需要的话就是生成缩略图什么...,我写成函数调用的,这里就不帖出来了,5楼的朋友还是自己写个吧.
  • 打赏
  • 举报
回复
我上传时先检查文件名是否存在,如存在就换个名
随机数看是怎么样产生的,例如如果以本机时间的“秒”为seed,则在同一秒钟内产生的随机数是相同的
你可以检查一下你的程序有没有类似的问题
wuxing2006 2007-10-22
  • 打赏
  • 举报
回复
代码问题,你要处理多文件

如:

foreach(HttpPostFile file in ...){
string name = "生成文件名";
file.SaveAs(name);

}
flybird_13 2007-10-22
  • 打赏
  • 举报
回复
把上传代码也帖上来吧~
blueicexx 2007-10-22
  • 打赏
  • 举报
回复
嗯,有可能,我用的静态类..但还是没找到原因
wolf1986 2007-10-21
  • 打赏
  • 举报
回复
是不是因为你用的是静态类
返回都是同一个参数,,就直接把原来的返回值重新赋值了
icefisher 2007-10-21
  • 打赏
  • 举报
回复
设置断点,调试一下,一般问题就找出来了
wanabe 2007-10-21
  • 打赏
  • 举报
回复
getdatetimename() 是在什么时候调用的,不会Page—Load里面吧

调试下,看看 getdatetimename() ,跟.next 随即数有没有变化
此类库由Fly经一年多在一些实际开发项目中运用到的公共方法,特于今日整合在一起已备使用,也希望给朋友们提供一个参考(也有待优化)。 具体类库说明如下: 1.DateDeal.cs 专门用于对日期间的处理,如间差、间格式。 2.DBHelper.cs 连接MSSQL的helper类相信这个大家都比较熟悉了。 3.DESEncrypt.cs 专门用户对字符串的加密和解密。 4.ErrorLog.cs 专门用户对系统的一些异常进行记录,默认写于Exception文件夹的ErrorLog.txt里。 5.FileDeal.cs 专门用于对文件的重命名、大小、格式等操作。 6.IExport.cs 专门用于数据的导入导出,目前此类不能使用。需加入正确的执行sql方法等。 7.ImageDeal.cs 专门用于对图片加文字水印、压缩图片等操作 8.InportMsg.cs 用于导入字段实体,暂无用。 9.MessageBox.cs 用于弹出对话框 10.RexDeal.cs 用于正则表达式的相关操作 11.SerializationHelper.cs 专门用于对类进行序列化和反序列化操作 12.ServerFileUpLoad.cs 专门用于文件的上传下载,附带了一点对于文件下载迅雷的使用说明。 13.StringDeal.cs 专门用于对于字符串的处理如截取、过滤、数据类型转换等操作 14.SystemConfigInfo.cs 专门用于得到操作系统的相应数据如CUP使用率、硬盘使用情况等 15.ValidatePost.cs 专门用于数据的验证如邮箱匹配、数字字母匹配等 16.Util.cs 专门的一个工具类如发送邮件、获取Webconfig信息、获取本类库程序集的信息等 17.还有access、mysql、oracle的dbhelper

62,054

社区成员

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

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

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

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