asp.net用FileUpload上传文件时候改名

我后台用FileUpload上传图片,但是如果传的图片名字一样,那就出问题了,会覆盖掉原本里面的那一份,搞的前台有些模块图片乱掉,所以我想传的时候把图片名字改掉,按照当前... 我后台用FileUpload上传图片,但是如果传的图片名字一样,那就出问题了,会覆盖掉原本里面的那一份,搞的前台有些模块图片乱掉,所以我想传的时候把图片名字改掉,按照当前时间的年月日时分秒来改,那就不会重复了,但不会写- -!我代码这样的,请问怎么改才行?数据库用的sql2000 varchar字段
if (FileUpload1.PostedFile.FileName.Length != 0)
{
string filename = FileUpload1.FileName;
FileUpload1.PostedFile.SaveAs(Server.MapPath("../uppic/" + filename));
Model.ImgUrl = "uppic/" + filename;
}

谢谢
展开
 我来答
肩膀上的太阳
推荐于2016-11-25 · TA获得超过295个赞
知道小有建树答主
回答量:288
采纳率:0%
帮助的人:271万
展开全部
/// <summary>
/// 上传文件并返回上传文件的名称,出错返回“fail”值
/// </summary>
/// <param name="file">上传控件的名称</param>
/// <param name="path">服务器保存文件的路径,例如:string path = Server.MapPath("../upfile/");</param>
/// <returns></returns>
public string Fileupload(FileUpload file, string path)
{
try
{

string filename = file.PostedFile.FileName;
filename = System.IO.Path.GetFileName(filename);
//改文件名
int index = filename.LastIndexOf(".");
string lastName = filename.Substring(index, filename.Length - index);
//新文件名称,以时间年月日时分秒作为文件名
string newfile = DateTime.Now.ToString("yyyyMMddhhmmss")+ lastName;
file.PostedFile.SaveAs(path + newfile);
return newfile;
}
catch (Exception)
{
return "fail";//失败
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mj390
2009-06-05 · TA获得超过262个赞
知道小有建树答主
回答量:225
采纳率:0%
帮助的人:231万
展开全部
// 取得文件扩展名
String ext = System.IO.Path.GetExtension(file1.PostedFile.FileName).ToLower();
// 取时间
String ntime = DateTime.Now.ToString();
ntime = ntime.Replace(":", "-"); // 文件名不能有:,所以替换掉
filename = ntime + ext;

最后文件名就成了 "2009-6-5 15-15-30.jpg"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
落月Prc
2009-06-05 · TA获得超过2789个赞
知道大有可为答主
回答量:2011
采纳率:100%
帮助的人:2435万
展开全部
在string filename = FileUpload1.FileName;
下面加上:
DateTime dt=DateTime.Now;
filename=dt.ToString()+filename;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式