ASP.NET解决上传大文件问题的方法
上传文件的控件为:FileUpload
Asp.Net对上传文件大小有限制。默认情况下用户只能上传4MB大小的文件,这会给用户带来不便。所以如果要上传40MB大小的文件。只能修改配置文件
关键代码如下
protected void btnSend_Click(object sender, EventArgs e)
{
try
{
//上传文件的思路:
//获取上传文件的名称,此时为一个全路径的地址
string upFileName = fulFileName.FileName;
//获取上传文件的扩展名
string lastName = upFileName.Substring(upFileName.LastIndexOf("."));
//得到新的文件名称
string newFileName = txtFileName.Text + lastName;
//设置要保存到的文件路径
string FilePath =Server.MapPath("./")+"File"+"//"+newFileName;
//将文件保存到指定文件路径下
fulFileName.PostedFile.SaveAs(FilePath);
lblResult.Text = "上传成功";
}
catch (Exception ex)
{
Response.Write(ex.Message.ToString());
lblResult.Text = "上传失败";
}
}
上传文件关键思路:1、先获取上传文件的原名称,2、再获取上传文件的扩展名组成新的名称。3、设置需要保存的路径使用:Server.MapPath(“./”)+”File”+newFileName ./表示当前页面下的虚拟路径,File表示当前页面中的File文件夹 必须要先创建此文件夹 4、将文件保存到指定文件路径下。使用FileUpload控件的PostFile的SaveAs()方法
实现上传大文件需要修改Web.config文件来实现。
<system.web>
<httpRuntime maxRequestLength=”40960” executionTimeOut=”6000” />
</system.web>
关键设置为maxRequestLength 该属性表示上传的最大字节