62,046
社区成员
发帖
与我相关
我的任务
分享
protected void Button2_Click(object sender, EventArgs e)
{
Boolean fileOk = false;
string path = Server.MapPath("~/upload/");
//判断是否已经选取文件
if (FileUpload1.HasFile)
{
//取得文件的扩展名,并转换成小写
string fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
//限定只能上传jpg和gif图片
string[] allowExtension = { ".jpg", ".gif",".jpeg" };
//对上传的文件的类型进行一个个匹对
for (int i = 0; i < allowExtension.Length; i++)
{
if (fileExtension == allowExtension[i])
{
fileOk = true;
break;
}
}
//对上传文件的大小进行检测,限定文件最大不超过10M
if (FileUpload1.PostedFile.ContentLength > 10240000)
{
fileOk = false;
}
//最后的结果
if (fileOk)
{
try
{
//string fileName = userId + DateTime.Now.ToString() + this.FileUpload1.FileName;
this.FileUpload1.PostedFile.SaveAs(path + this.FileUpload1.FileName);
this.Label4.Text = "上传成功,上传后的文件名为"+ fileName;
}
catch
{
this.Label4.Text = "上传失败!";
}
}
else
{
Response.Write("<script>window.alert('文件类型或者文件大小超出10M')</script>");
}
}
string newfilename = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString("00") + DateTime.Now.Hour.ToString("00") + DateTime.Now.Minute.ToString("00")
string fromfilename = fileToUpload.PostedFile.FileName;
string sOriginalFileName = fromfilename.Substring(fromfilename.LastIndexOf("\\")+1);
string sFileExt = sOriginalFileName.Substring(sOriginalFileName.LastIndexOf(".")).ToLower();
string newfilename = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString("00") + DateTime.Now.Hour.ToString("00") + DateTime.Now.Minute.ToString("00")+ DateTime.Now.Second.ToString()+ pubfun.GetRandNum(5)+sFileExt;
string togo = "/user/" + newfilename;
model.pic = togo;
if (pubfiles.CheckValidExt(sFileExt,openokfiles))
{
try
{
double sgfileSize = System.Math.Round((double.Parse(fileToUpload.PostedFile.ContentLength.ToString())/1048576),2);
//managesgspace文件大小
if (System.Math.Round(managesgspace,2)>sgfileSize)
{
//managemaxspace:允许上传最大文件值
if (System.Math.Round(managemaxspace,2)>totalsize+sgfileSize)
{
fileToUpload.PostedFile.SaveAs(Server.MapPath(togo));
upmessLabel.Text=LAN.R2.GetString("ty_upload")+LAN.R2.GetString("ty_dowithok")+LAN.R2.GetString("ty_filesize")+sgfileSize.ToString()+"M";
bll.Add(model);
CommonClass.MsgBox2(KYCMS.LAN.R2.GetString("ty_dowithok"), "pic_list.aspx");
}
}
}
catch(Exception ex)
{
CommonClass.MsgBox("123");
}
}
else
{
CommonClass.MsgBox("false");
upmessLabel.Text=LAN.R2.GetString("ty_pleasepermifile");
return;
}
}
catch(Exception ex)
{
upmessLabel.Text=LAN.R2.GetString("ty_upload")+LAN.R2.GetString("ty_dowitherror")+ex.ToString();
return;
}
//公共部分
//enctype="multipart/form-data"
//<input type="file" id="upFile" runat="server" NAME="upFile">
//---------------------------------------------------------------
自动根据日期和文件大小不同为文件命名(基础详解)
if(inputFile.PostedFile!="") //检查上传文件不为空
{
string strName = inputFile.PostedFile.FileName;
int intExt = strName.LastIndexOf("."); //取得文件名(抱括路径)里最后一个"."的索引
string strExt = strName.Substring(intExt); //取得文件扩展名
//自动根据日期和文件大小不同为文件命名,确保文件名不重复
DateTime datNow = DateTime.Now;
string strNewName = datNow.DayOfYear.ToString() + inputFile.PostedFile.ContentLength.ToString() + strExt;
//int intPath = strName.LastIndexOf("\\"); //取得文件名(包括路径)里最后一个"\"的索引
//string strNewName = strName.Substring(intPath); //取得文件名(不包括路径)
string strSaveDir = "./upload/"; //设定上传文件的保存路径
inputFile.PostedFile.SaveAs(Server.MapPath(strSaveDir + strNewName));
//inputFile.PostedFile.SaveAs(Server.MapPath("\\upload\\"+strNewName)); //在这里里"\"必须用"\\"代替
//得到这个文件的相关属性:文件名,文件类型,文件大小
labelUpResult.Text = "上传成功!";
labelFileName.Text = "文件源:" + strName;
//labelFileExt.Text = "文件类型:" + inputFile.PostedFile.ContentType + "( " + strExt + " )";
labelFileExt.Text = "文件类型:" + strExt ;
labelFileSize.Text = "文件大小:" + (inputFile.PostedFile.ContentLength / 1024).ToString() + " K Byte(s)";
}
}
# protected void btnUpload_Click(object sender, EventArgs e)
# {
# //判断是否上传了文件
# if (fileUpload.HasFile)
# {
# //指定上传文件在服务器上的保存路径
# string savePath = Server.MapPath("~/upload/");
# //检查服务器上是否存在这个物理路径,如果不存在则创建
# if (!System.IO.Directory.Exists(savePath))
# {
# //需要注意的是,需要对这个物理路径有足够的权限,否则会报错
# //另外,这个路径应该是在网站之下,而将网站部署在C盘却把上传文件保存在D盘
# System.IO.Directory.CreateDirectory(savePath);
# }
# savePath = savePath + "\\" + fileUpload.FileName;
# fileUpload.SaveAs(savePath);//保存文件
# //不过需要注意的是,在客户端访问却需要指定的是URL地址,而不是在服务器上的物理地址
# literal.Text = string.Format("<a href='upload/{0}'>upload/{0}</a>", fileUpload.FileName);
# }
string fileName = path +userId + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") +
this.FileUpload1.PostedFile.SaveAs(fileName );
this.Label4.Text = "上传成功,上传后的文件名为"+ fileName;